边缘集合中插入重复文档

9
我正在使用ArangoDB的Node驱动版本6来插入两个顶点之间的关系,具体操作如下。
db.collection("starks").save({ 
    _from: "Starks/Lyanna-Stark", 
    _to: "Starks/Ned-Stark", 
    type: "married" 
});

这将在数据库中插入 Starks/Lyanna-StarkStarks/Ned-Stark 之间的 married 关系。但是,如果我运行这个查询两次,它将使用不同的关系键插入两次。我希望避免这种情况,因为一个关系应该只存在一次。我该如何实现这一点?

2个回答

8

只需要进行修复,如果集合名称为relations,则查询也应该是db.relations.ensureIndex({ ... });。 :P - Saif Ali Khan

0
你面临这个问题的简单原因是每次保存对象时,Arango会创建一个新的ID。边缘记录的唯一性是通过“_key”键实现的。
为了解决这个问题,你可以自己提供“_key”键,或者改变代码逻辑来检查记录是否已经存在于数据库中。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接