这是推荐做法,还是应该尝试将@rid用作我班级的主键?
例如,示例JSON导入页面使用此记录定义:
{
"name": "Joe",
"id": 1, // <---- Surrogate key for this class
"friends": [2,4,5],
"enemies": [6]
}
这使我更容易创建可以正常工作的Edges,而无需在加载时查询刚刚插入的对象的@rid。
这是推荐的最佳做法吗?
答案 0 :(得分:0)
当OrientDB生成记录时,它会自动分配一个唯一的单元标识符,称为记录ID或RID。记录ID的语法是带有群集标识符和位置的井号。格式如下:
#<cluster>:<position>
记录永远不会丢失标识符,除非它们被删除。删除后,OrientDB永远不会回收标识符,除了本地存储。此外,您可以直接通过其记录ID访问记录。因此,您不需要创建一个字段作为主键,就像在关系数据库中一样。
希望有所帮助
此致