Memgraph与GQLAlchemy是否支持创建复合唯一约束?
GQLAlchemy与Memgraph的复合唯一约束支持
GQLAlchemy完全支持创建复合唯一约束——当你在定义约束时指定多个属性,它会生成要求这些属性值组合在全库唯一的约束,而非为每个属性单独创建独立的唯一约束。
举个实际代码示例:
from gqlalchemy import Node, Field, unique_constraint @unique_constraint("name", "email") class User(Node): name: str = Field() email: str = Field() age: int = Field()
这段代码会在Memgraph中为User节点创建基于name和email的复合唯一约束,具体规则是:
- 允许存在
name相同但email不同的User节点 - 允许存在
email相同但name不同的User节点 - 绝对禁止存在
name和email完全一致的两个User节点
如果尝试插入违反该复合约束的节点,Memgraph会直接抛出错误,拦截重复数据的插入。
内容的提问来源于stack exchange,提问作者ztudents
相关产品推荐
相关产品推荐

