Neo4j数据导入

1.使用Cypher语法直接创建(数据量极少时)

CREATE (TheMatrix:Movie {title:'The Matrix', released:1999, tagline:'Welcome to the Real World'})
CREATE (Keanu:Person {name:'Keanu Reeves', born:1964})
CREATE (Carrie:Person {name:'Carrie-Anne Moss', born:1967})
CREATE (Laurence:Person {name:'Laurence Fishburne', born:1961})

2. 直接从数据库mysql导入

需要apoc和mysql_connector的jar包

  • apoc-3.5.0.6-all.jar
  • mysql-connector-java-8.0.11.jar
    注意serverTimezone=UTC,指定中国时区,否则可能报错
CALL apoc.load.jdbc('jdbc:mysql://localhost/test_neo4j?user=root&password=123456&&serverTimezone=UTC','person') YIELD row CREATE (n:Person {id: row.id, name: row.name, sex: row.sex, phone: row.phone})

3.使用shell命令导入csv文件的方式

导入命令如下(在安装包的bin目录下执行):
neo4j-admin import --mode=csv --database=Test1.db --nodes import-data\test\actor.csv --nodes import-data\test\movie.csv --relationships import-data\test\role.csv

  • mode:导入方式
  • database:指定数据库
  • nodes:节点文件
  • relationships:关系文件

需要在一个新的数据库中执行,如果Test1.db已经存在,则执行上述命令会报错,同时要确保csv文件的编码方式“UTF-8”

4.可视化窗口load导入

load csv with headers  from "file:///phone.csv" as line create(a:phone{id: line.id, from: line.from, to: line.to, start_time: line.start_time, end_time: line.end_time})
  1. WITH HEADERS:可选,表明csv文件的第一行是属性名;
  2. 导入node时一般用create语句,导入关系时一般用merge语句,防止重复导入
  3. Csv文件需要放置在neo4j安装目录下的import文件夹下
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容