Datomic Seattle の例では、挿入時に明示的な ID 番号を使用しています。
{:db/id #db/id[:db.part/user -1000014], :neighborhood/name "Belltown", :neighborhood/district #db/id[:db.part/user -1000013]}
{:community/category ["community council"], :community/orgtype :community.orgtype/community, :community/type :community.type/website, :db/id #db/id[:db.part/user -1000015], :community/name "All About Belltown", :community/url "http://www.belltown.org/", :community/neighborhood #db/id[:db.part/user -1000014]}
単一のスキーマに対する通常の挿入の場合、その場で ID を生成する方がはるかに簡単です。
[
{
:db/id #db/id[:db.part/user],
:car/model \"Ferrari\"
:car/numberplate \"RENT ME!\"
}
]
これにより、挿入時にIDが生成されます。
Renter、Car、および RentEvent を表現したい、より複雑なスキーマがあるとします。
私はそれをできた:
[
{
:db/id #db/id[:db.part/user],
:car/model \"Ferrari\"
:car/numberplate \"RENT ME!\"
}
]
=> ID 番号を取得し、A に貼り付けます
[
{
:db/id #db/id[:db.part/user],
:renter/name \"John Smith\"
:renter/socialsecuritynumber \"123456789\"
}
]
=> ID 番号を取得し、B に貼り付けます
[
{
:db/id #db/id[:db.part/user],
:rentevent/car A
:rentevent/renter B
}
]
しかし、それには ID 番号をいろいろいじる必要があります。これを次のような 1 つの大きなブロックに挿入したいと思います。
[
{
:db/id #db/id[:db.part/user],
:rentevent/car {
:db/id #db/id[:db.part/user],
:car/model \"Ferrari\"
:car/numberplate \"RENT ME!\"
},
:rentevent/renter {
:db/id #db/id[:db.part/user],
:renter/name \"John Smith\"
:renter/socialsecuritynumber \"123456789\"
}
]
これは可能ですか?構文は何ですか?
仮定:
- これは、制御の分離下にある当事者によって、反復可能なスクリプト化されたデータベースのリリースが本番データベースに対して行われる、監査可能な環境です。つまり、これは、データベースへの変更が行われる前後に監査人が確認できるテキスト ファイルである必要があります。