csv文件导入Neo4j(包括结点和关系的导入)
2017-05-03 21:41
246 查看
首先,Neo4j打开的目录地址(即数据库data存放的地址)如下图:
![](https://oscdn.geek-share.com/Uploads/Images/Content/202009/24/11951b796fae84c9e8a6b6792bbaf656)
在此目录下创建一个import文件,文件夹里面存放需要载入的csv文件,因为Neo4j默认是从打开地址目录(F:\Eclipse_AF\Neo4jTest\neo4j_data)下的import中读出,所以需要在此目录下创建csv文件,否则在Neo4j中执行载入命令会出现找不到文件的情况。(person_Format.csv和PersonRel_Format.csv目录:F:\Eclipse_AF\Neo4jTest\neo4j_data\import)
![](https://oscdn.geek-share.com/Uploads/Images/Content/202009/24/fe8227b328d015e3bdecaa07e0b52157)
在Neo4j的命令行处输入下列命令:
WITH HEADERS表明csv文件的第一行是属性名。
执行语句,会出现下面的提示信息:
![](https://oscdn.geek-share.com/Uploads/Images/Content/202009/24/ceab886cbe2ff86794c903c6a502cf85)
提示信息说明已经加入了5个结点标签,标明载入成功,为了验证是否载入了person_Format.csv文件中的信息,我们使用下面的语句来验证:
执行语句,出现下面的结果:
![](https://oscdn.geek-share.com/Uploads/Images/Content/202009/24/66a9a53796dd6b0954188df8126d7a24)
结果表明,person_Format.csv文件中的数据载入成功。
![](https://oscdn.geek-share.com/Uploads/Images/Content/202009/24/9294e7c43679e524cf8c654776fe26af)
在neo4j的命令行处执行下列语句:
执行会出现下图内容:
![](https://oscdn.geek-share.com/Uploads/Images/Content/202009/24/703d75204eb75cd06acd73277a0dd440)
表明添加关系成功。
为了验证关系是否正确,输入下面的查询语句:
出现下图结果:
![](https://oscdn.geek-share.com/Uploads/Images/Content/202009/24/85d0e950bf44ca4977d9f8bb70d7f707)
表明关系已经创建成功(注:在创建关系这一环节,用到了创建结点的内容,即第一部分的内容)
至此,结点csv文件和关系csv文件导入已经ok了。
存在待解决的问题:
在结点和关系csv文件中,这几条数据必须是每一个属性值都有,不能出现某一记录不存在某些属性值的情况,否则在载入的时候会出现空指针异常,若把没有属性的属性值用空格表示,则在载入时不会报错,只是属性值会置为空。
在此目录下创建一个import文件,文件夹里面存放需要载入的csv文件,因为Neo4j默认是从打开地址目录(F:\Eclipse_AF\Neo4jTest\neo4j_data)下的import中读出,所以需要在此目录下创建csv文件,否则在Neo4j中执行载入命令会出现找不到文件的情况。(person_Format.csv和PersonRel_Format.csv目录:F:\Eclipse_AF\Neo4jTest\neo4j_data\import)
一、csv结点文件的载入
下面是person_Format.csv(文件名)文件中的内容,主要字段包括id,name和age,下面的5行分别对应5个人的信息(注意逗号是英文格式下的逗号,否则读不出)。在Neo4j的命令行处输入下列命令:
LOAD CSV WITH HEADERS FROM "file:///person_Format.csv" AS line MERGE (p:person{id:line.id,name:line.name,age:line.age})
WITH HEADERS表明csv文件的第一行是属性名。
执行语句,会出现下面的提示信息:
提示信息说明已经加入了5个结点标签,标明载入成功,为了验证是否载入了person_Format.csv文件中的信息,我们使用下面的语句来验证:
start n = node(*) return n
执行语句,出现下面的结果:
结果表明,person_Format.csv文件中的数据载入成功。
二、csv关系文件的载入
下面是PersonRel_Format.csv(文件名)文件中的内容,主要字段包括from_id,property1,property2和to_id四个字段,下面的3行分别对应3个关系的信息(注意逗号是英文格式下的逗号,否则读不出)。在neo4j的命令行处执行下列语句:
LOAD CSV WITH HEADERS FROM "file:///PersonRel_Format.csv" AS line match (from:person{id:line.from_id}),(to:person{id:line.to_id}) merge (from)-[r:rel{property1:line.property1,property2:line.property2}]->(to)WITH HEADERS表明csv文件的第一行是属性名。
执行会出现下图内容:
表明添加关系成功。
为了验证关系是否正确,输入下面的查询语句:
start n = node(*) return n
出现下图结果:
表明关系已经创建成功(注:在创建关系这一环节,用到了创建结点的内容,即第一部分的内容)
至此,结点csv文件和关系csv文件导入已经ok了。
存在待解决的问题:
在结点和关系csv文件中,这几条数据必须是每一个属性值都有,不能出现某一记录不存在某些属性值的情况,否则在载入的时候会出现空指针异常,若把没有属性的属性值用空格表示,则在载入时不会报错,只是属性值会置为空。
相关文章推荐
- csv文件导入Neo4j(包括结点和关系的导入)
- CSV文件导入Neo4j数据库
- CSV文件导入Neo4j数据库
- CSV文件导入Neo4j数据库
- CSV文件导入Neo4j数据库
- 批量导入csv文件到数据库
- 怎么把CSV文件的导入到数据库中(C#.net VS2005)
- php数据导入导出之excel(csv文件)
- SQL Server 2005中导入.csv文件
- C++导入导出CSV文件
- 导入csv文件到数据库
- Outlook 导入联系人(.CSV文件)
- PHP实现客户端将CSV文件导入服务器数据库中
- csv 格式文件 导入导出
- php中数据的批量导入(csv文件)
- PL/SQL Developer 导入导出csv文件
- 从文件(*.csv或*.txt)导入Oracle数据库Java源代码
- PL/SQL Developer 导入导出csv文件
- php中数据的批量导入(csv文件)
- 将DataSet数据集导入CSV后缀文件中