我在尝试使用适用于python的neo4j驱动程序从密文脚本批量加载数据时遇到了这个问题。可以说我有一个节点X,我应该能够执行以下操作:
(X)-[:IS_FRIENDS]->(Y)
(X)-[:IS_FRIENDS]->(Z)
即具有来自节点的多个相同关系类型。但是,当我尝试运行一个脚本(逐行插入约5k个脚本)时,它会运行,但每个节点不允许使用多个相同关系类型的脚本。如果我直接在图中运行密码查询,那么这不是问题。我还发现了这个(https://www.lyonwj.com/LazyWebCypher/),它没有这个问题,但是我需要通过python运行脚本。该图最终会丢失〜1k关系。
相关代码:
from neo4j import GraphDatabase, basic_auth
neo_driver = GraphDatabase.driver(url, auth=basic_auth(us, pw))
neo_db = neo_driver.session()
with open(cypher_file, 'r') as f:
for line in f:
x = neo_db.run(line)
因此,这是py2neo的常见问题,因此我以为我使用neo4j驱动程序也面临同样的问题,但事实证明我的问题是其他问题。无论哪种方式,我都设法在每次查询后解决这种强制排队的语句的问题,虽然这不是最佳选择,但它可以作为临时解决方案。