neo4j导入实体,neo4j导入关系
neo4j可以使用csv文件导入数据,可以快速导入大量的数据形成图谱
一、导入实体
先创建一个csv文件,给里面添加数据,如下图添加了name和birthday数据。
将文件用编辑软件打开,调整编码为utf-8格式,不然中文会乱码。我用的是noptepad++
再将文件放入到我们neo4j目录下面的import目录下,执行下面的语句,就可以看到导入的实体了。
//导入实体 LOAD CSV WITH HEADERS FROM "file:///shiti.csv" AS line MERGE (z:Persion{name:line.name,birthday:line.birthday}) return *;
二、导入关系
一样建一个csv文件,执行语句,就可以了
LOAD CSV WITH HEADERS FROM "file:///guanxi.csv" AS line match (from:Persion{name:line.from}),(to:Persion{name:line.to}) merge (from)-[r:学生]->(to)
三、动态导入关系
有时候实体之间的关系不是一种,上面那种方式只能写死关系类型,当有多种关系的时候,我们需要建多个文件,会很麻烦。因此可以使用一个APOC插件来解决
下载地址
选择跟自己neo4j对应的版本
下好之后放到安装目录下面的plugins里面就可以了
重启neo4j,执行语句
LOAD CSV WITH HEADERS FROM "file:///guanxi.csv" AS line MATCH (from:Persion{name:line.from}),(to:Persion{name:line.to}) call apoc.merge.relationship(from, line.relation, {}, {}, to) yield rel return *;
参考博客