【发布时间】:2015-10-05 00:22:58
【问题描述】:
我有两个单独的 csv 文件需要导入到我的 neo4j 数据库中。第一个文件包含我希望导入的所有节点。信息分类如下:
id, Name
1, Earth science
要导入它,我成功使用了以下代码:
从 'file:///Node_test.csv' AS 行加载带有标题的 CSV
CREATE (:Discipline { id: toInt(line.id), name: line.Name})
现在,我想导入我的关系文件并创建我刚刚导入的节点之间的所有关系。 relationship.csv 文件中的信息分类如下:
RelationshipID, parentID, relationship_type, childID
1, 2, IS_A_PARENT_DISCIPLINE_OF, 5
要导入它,我使用了以下代码,但没有成功:
使用定期提交 500 从“file:///relationship_test.csv”作为 csvLine 加载带有标题的 CSV
MATCH (DParent:Discipline { id: toInt(csvLine.parentID)}),(DChild:Discipline { id: toInt(csvLine.childID)})
CREATE (DParent)-[:IS_A_PARENT_DISCIPLINE_OF { id:toInt(csvLine.RelationshipID) } ]->(DChild)
注意:结果没有显示任何错误,它只是没有返回任何更改,没有行。
有关我找到的有关该主题的其他文档,请参阅下面的链接;我还没有找到任何描述如何导入 csv 文件以在同一标签的节点之间创建关系的文档。
http://neo4j.com/docs/2.3.0-M01/cypherdoc-importing-csv-files-with-cypher.html
How do i create relationships for existing nodes by importing csv file in neo4j?
Spring Data Neo4j 4.0.0: Can't Create Relationship Between Nodes with the Same Label
【问题讨论】:
-
您的第一个文件是否实际上包含 id 值 2 和 5 的行?
-
是的。而且我很确定第一个文件中没有缺少 id,因为我会收到一条错误消息。不是吗?
-
找不到匹配项不被视为错误。
-
好的,我会进行第二次检查。谢谢!
-
关系文件已经过验证。这不是问题。还有其他想法吗?
标签: neo4j cypher relationship graph-databases