gpt4 book ai didi

datomic - 数据数据库的第一次查询

转载 作者:行者123 更新时间:2023-12-02 15:22:16 27 4
gpt4 key购买 nike

我可以访问 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 数据库,运算符(operator)能够(给定正确的密码)列出所有数据库,连接到其中一个数据库,查看其表格,然后通过查询其中一个数据库开始滚动。

通过上下文,即使这个数据库(“somedb”)在“内存中”,我仍然希望它存在,因为有一个事务处理程序正在运行。然而,交易者有点可疑,因为它看起来像这样:

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)

这里您根本没有指定存储协议(protocol),即 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 后缺少 :。针对以上错误,API文档为connect涵盖正确的 URI 构造。

您可以使用 get-database-names 列出数据库,已记录 here .

要启动并运行查询,使用 console 可能会有更好的初次体验,一个网络应用程序/GUI,它处理数据库的自动列表、连接到一个数据库、查询等。

关于datomic - 数据数据库的第一次查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34629664/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com