数据数据库的第一次查询
First query of a datomic database
我可以访问 repl,并且我有一个可以连接的 uri
。我如何连接、查看存在哪些实体和属性、查看它们的值然后向下钻取等等?我只是在使用无需注册的免费版本。
到目前为止,这是我尝试过的:
C:\programs\datomic-free-0.9.5327>.\bin\repl
Clojure 1.6.0
user=> (use '[datomic.api :only [q db] :as d])
nil
user=> (def conn (d/connect "datomic:dev://localhost:4334/somedb"))
IllegalArgumentExceptionInfo :db.error/unsupported-protocol Unsupported protocol :dev datomic.error/arg (error.clj:57)
user=>
user=> (def conn (d/connect "datomic://localhost:4334/somedb"))
IllegalArgumentExceptionInfo :db.error/invalid-db-uri Invalid database URI datomic://localhost:4334/somedb datomic.error/arg (error.clj:57)
user=> (def conn (d/connect "datomic:mem//somedb"))
IllegalArgumentExceptionInfo :db.error/invalid-db-uri Invalid database URI datomic:mem//somedb datomic.error/arg (error.clj:57)
使用 MySql 或 Oracle 数据库,操作员能够(给定正确的密码)列出所有数据库,连接到其中一个,查看其表,然后通过查询其中一个开始滚动他们。
根据上下文,即使这个数据库 ('somedb') 是 'in memory',我仍然希望它存在,因为有一个事务处理程序 运行。然而,交易者有点可疑,因为它看起来像这样:
C:\programs\datomic-free-0.9.5327>.\bin\transactor .\config\samples\free-transactor-template.properties
Starting datomic:free://localhost:4334/<DB-NAME>, storing data in: data ...
System started datomic:free://localhost:4334/<DB-NAME>, storing data in: data
我对查询应该正常运行并且 运行 并且其中有值的数据库感到困惑。
我可以澄清这些错误:
user=> (use '[datomic.api :only [q db] :as d])
nil
user=> (def conn (d/connect "datomic:dev://localhost:4334/somedb"))
IllegalArgumentExceptionInfo :db.error/unsupported-protocol Unsupported protocol :dev datomic.error/arg (error.clj:57)
此处的 URI 格式正确,但错误表明您正在尝试访问专业专用存储 (dev),而不是免费允许的存储(免费和内存)。请注意,您可以使用免费级入门许可证访问专业存储格式(即您不需要付费许可证即可开始使用)。
user=> (def conn (d/connect "datomic://localhost:4334/somedb"))
IllegalArgumentExceptionInfo :db.error/invalid-db-uri Invalid database URI datomic://localhost:4334/somedb datomic.error/arg (error.clj:57)
这里您根本没有指定存储协议,即 dev
在第一个调用中。这是必需的。
user=> (def conn (d/connect "datomic:mem//somedb"))
IllegalArgumentExceptionInfo :db.error/invalid-db-uri Invalid database URI datomic:mem//somedb datomic.error/arg (error.clj:57)
mem
后缺少 :
。对于上述错误,connect 的 API 文档涵盖了正确的 URI 构造。
您可以使用 get-database-names
列出数据库,已记录 here。
要起床和 运行 查询,您可能会使用 console 更好的初次体验,这是一个网络 app/GUI,它处理数据库的自动列表,连接到一个,查询等
我可以访问 repl,并且我有一个可以连接的 uri
。我如何连接、查看存在哪些实体和属性、查看它们的值然后向下钻取等等?我只是在使用无需注册的免费版本。
到目前为止,这是我尝试过的:
C:\programs\datomic-free-0.9.5327>.\bin\repl
Clojure 1.6.0
user=> (use '[datomic.api :only [q db] :as d])
nil
user=> (def conn (d/connect "datomic:dev://localhost:4334/somedb"))
IllegalArgumentExceptionInfo :db.error/unsupported-protocol Unsupported protocol :dev datomic.error/arg (error.clj:57)
user=>
user=> (def conn (d/connect "datomic://localhost:4334/somedb"))
IllegalArgumentExceptionInfo :db.error/invalid-db-uri Invalid database URI datomic://localhost:4334/somedb datomic.error/arg (error.clj:57)
user=> (def conn (d/connect "datomic:mem//somedb"))
IllegalArgumentExceptionInfo :db.error/invalid-db-uri Invalid database URI datomic:mem//somedb datomic.error/arg (error.clj:57)
使用 MySql 或 Oracle 数据库,操作员能够(给定正确的密码)列出所有数据库,连接到其中一个,查看其表,然后通过查询其中一个开始滚动他们。
根据上下文,即使这个数据库 ('somedb') 是 'in memory',我仍然希望它存在,因为有一个事务处理程序 运行。然而,交易者有点可疑,因为它看起来像这样:
C:\programs\datomic-free-0.9.5327>.\bin\transactor .\config\samples\free-transactor-template.properties
Starting datomic:free://localhost:4334/<DB-NAME>, storing data in: data ...
System started datomic:free://localhost:4334/<DB-NAME>, storing data in: data
我对查询应该正常运行并且 运行 并且其中有值的数据库感到困惑。
我可以澄清这些错误:
user=> (use '[datomic.api :only [q db] :as d])
nil
user=> (def conn (d/connect "datomic:dev://localhost:4334/somedb"))
IllegalArgumentExceptionInfo :db.error/unsupported-protocol Unsupported protocol :dev datomic.error/arg (error.clj:57)
此处的 URI 格式正确,但错误表明您正在尝试访问专业专用存储 (dev),而不是免费允许的存储(免费和内存)。请注意,您可以使用免费级入门许可证访问专业存储格式(即您不需要付费许可证即可开始使用)。
user=> (def conn (d/connect "datomic://localhost:4334/somedb"))
IllegalArgumentExceptionInfo :db.error/invalid-db-uri Invalid database URI datomic://localhost:4334/somedb datomic.error/arg (error.clj:57)
这里您根本没有指定存储协议,即 dev
在第一个调用中。这是必需的。
user=> (def conn (d/connect "datomic:mem//somedb"))
IllegalArgumentExceptionInfo :db.error/invalid-db-uri Invalid database URI datomic:mem//somedb datomic.error/arg (error.clj:57)
mem
后缺少 :
。对于上述错误,connect 的 API 文档涵盖了正确的 URI 构造。
您可以使用 get-database-names
列出数据库,已记录 here。
要起床和 运行 查询,您可能会使用 console 更好的初次体验,这是一个网络 app/GUI,它处理数据库的自动列表,连接到一个,查询等