如何使用Python的GQLAlchemy在图数据库中创建关系?
在Python中用GQLAlchemy实现Cypher的CREATE关系操作
要实现你用Cypher写的创建城市关联关系的逻辑,用GQLAlchemy可以按以下步骤来做:
1. 安装GQLAlchemy
如果还没安装,先通过pip完成安装:
pip install gqlalchemy
2. 定义节点模型
对应Cypher里的:City节点,创建一个继承自Node的Python类:
from gqlalchemy import Node, Relationship, Database, fields class City(Node): # 定义name属性,设置唯一索引匹配Cypher中的属性逻辑 name: str = fields.StringProperty(unique=True, indexed=True)
3. 连接数据库
GQLAlchemy主要对接Neo4j,传入你的数据库连接地址即可:
# 替换成你的Neo4j账号、密码和端口信息 db = Database("bolt://neo4j:your_password@localhost:7687")
4. 创建节点和关系
接下来创建城市节点并建立CONNECTED_WITH关系:
# 创建(或获取已存在的)伦敦和都柏林节点,避免重复创建 london, _ = City.get_or_create(db, {"name": "London"}) dublin, _ = City.get_or_create(db, {"name": "Dublin"}) # 建立两个城市之间的CONNECTED_WITH关系 Relationship( start_node=london, end_node=dublin, type="CONNECTED_WITH" ).save(db)
补充说明
- 如果你确定目标节点不存在,也可以直接用
City(name="London").save(db)创建节点 - 关系的
type参数完全对应Cypher中的:CONNECTED_WITH关系类型
内容的提问来源于stack exchange,提问作者KWriter
相关产品推荐
相关产品推荐

