py2neo merge报错:Primary label and primary key are required for MERGE operation

node1 = Node("公司",name="绩溪县瑞泰置业有限公司")
node2 = Node("公司",name="安徽省文一投资控股集团经开置业有限公司")
node3 = Node("公司",name="安徽嘉泽置业有限公司")
node4 = Node("公司",name="安徽省文一投资控股集团定远置业有限公司")
node5 = Node("公司",name="安徽省文一资产管理有限公司")
rel2 = Relationship(node1, "对外投资", node2)
rel3 = Relationship(node1, "对外投资", node3)
rel4 = Relationship(node1, "对外投资", node4)
rel5 = Relationship(node1, "对外投资", node5)
tx.merge(node1);

这几天研究neo4j,使用了一个python的py2neo包,其中有一条merge语句,代码如上,本意是在neo4j数据库中查找一个label名为公司,属性name为绩溪县瑞泰置有限公司的节点,如果不存在则创建,然后运行发现报错,如下,说缺少两个参数,

上网查了很多教程后基本上格式都是那样,那么回过头看报错,右点击merge函数查看定义源码后发现了问题,原来是新版本库函数改写了的原因,py2neo 3版本基本上都是如上的写法,而py2neo 4版本要求改函数添加上两个参数,即label名和属性名,修改如下

tx.merge(node1,primary_label='公司',primary_key='name');

运行发现即可。

  • 4
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

rodger_snow

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值