20

Datomic では、ローカル データベースを操作する方法について混乱しています。

私が入力した場合:

>>(ns datomic-tut (:use [datomic.api :as d]))
nil

>>(d/create-database "datomic:mem://hello")
true

>> (d/connect "datomic:mem://hello")
#<LocalConnection datomic.peer.LocalConnection@57102fab>

>> Ctrl-D to Disconnect

次に、repl を再起動すると、次のようになります。

>> (ns project-ns   (:use [datomic.api :as d]))
nil

>> (d/connect "datomic:mem://hello")
ExceptionInfo :peer/db-not-found Could not find hello in catalog  clojure.core/ex-info (core.clj:4227)

作成したデータベースを保存するために作成できる別の種類のローカル URI はありますか?

4

2 に答える 2

20

入門ガイドでは、無料のストレージ プロトコルの使用について説明しています。

フリー ストレージ プロトコルを使用してトランザクションを実行する

フリー ストレージ プロトコルは、ストレージにローカル ディスク ファイルを使用します。

次のように、空きストレージを使用してローカル トランザクターを開始できます。

bin/transactor config/samples/free-transactor-template.properties

このスクリプトは、接続に使用するベース URI を含む数行の出力を出力します。

datomic:free://localhost:4334/<DB-NAME>

接続文字列を作成するには、「hello」など、選択したデータベース名に置き換えるだけです。

datomic:free://localhost:4334/hello

この URI を使用すると、前のセクションの手順を繰り返して、今度はトランザクションに接続できるようになります。

于 2012-06-12T18:21:03.200 に答える