在 Fluree 中,DB 的 Schema = 集合 (Collections) + 谓词 (Predicates) 组成(谓词是什么后面会解释)。简单来说,集合就是 “表 (Table)” 而谓词就是 “列 (row)”
例如我要建立一个 “人员表” (Table “Person”),然后这个人员包含有名字 (firstname), 姓氏 (lastname), 年龄 (Age),就像是一个 row:
人员表:
名字 firstname | 姓氏 lastname | 年龄 Age |
---|---|---|
那我们怎么做呢?
首先先建立 Table,也就是 Collection,我们一次建立两个 Collection,分别是 使用者 (user) 和 事件 (event):
# Linux
curl -i -H "Accept: application/json" -X POST -d '[ { "_id": "_collection", "name": "user" }, { "_id": "_collection", "name": "event" } ]' <http://13.114.145.25/fdb/seedao/testing/transact>
# Windows
curl -i -H "Accept: application/json" -X POST -d "[ { \\"_id\\": \\"_collection\\", \\"name\\": \\"user\\" }, { \\"_id\\": \\"_collection\\", \\"name\\": \\"event\\" } ]" <http://13.114.145.25/fdb/seedao/testing/transact>
这边可以注意到,API 呼叫的是 /fdb/seedao/testing/transact
也就是 Ledger名称 + transact,那每一次的 transact 呼叫都是一个阵列 (Array),因为可以包含多个 transact,像这次这个就包含 2 个 transact,分别建立两个 Collection:
[
{
"_id":"_collection",
"name":"user"
},
{
"_id":"_collection",
"name":"event"
}
]
建立完之后,你会得到一个 JSON,你可以看到这是第几个 Block,他的 flakes 有哪些(其他栏位后面会解释):