我在ArangoDB中创建了一个集合,需要说一个字段是唯一的。例如,我需要说'user_table''电子邮件'是唯一的。 怎么做?
答案 0 :(得分:4)
为确保集合中某个属性的唯一性,您可以使用ensureUniqueConstraint
函数进行集合:
db['user_table'].ensureUniqueConstraint("email");
这将在属性email
上创建非稀疏的唯一索引。
如果email
是可选属性,您可能需要使用:
db['user_table'].ensureUniqueConstraint("email", { sparse: true });
正如@CoDEmanX所提到的,它也可以使用更通用的ensureIndex
方法并指定索引类型和唯一性作为参数:
db['user_table'].ensureIndex({ fields: ["email"], type: "hash", unique: true, sparse: true });