neo4j导入csv文件

关于neo4j的安装

官网和网上博客提供了n中安装的方法,这里不再赘述:

普通安装: https://cloud.tencent.com/developer/article/1336299

windows安装: https://www.cnblogs.com/ljhdo/p/5521577.html

下载地址:

Windows版本: https://neo4j.com/artifact.php?name=neo4j-community-3.5.7-windows.zip

Linux版本: https://neo4j.com/artifact.php?name=neo4j-community-3.4.1-unix.tar.gz

Docker安装:https://www.jianshu.com/p/d252bdcc28da

我这里使用的windows本地安装的方式,注意安装好了修改一下配置文件:

#安装好之后需要配置一些选项
# 允许远程连接
dbms.connectors.default_listen_address=0.0.0.0 # 打开三种连接方式
# Bolt connector
dbms.connector.bolt.enabled=true
dbms.connector.bolt.tls_level=OPTIONAL
dbms.connector.bolt.listen_address=:7687 # HTTP Connector. There can be zero or one HTTP connectors.
dbms.connector.http.enabled=true
dbms.connector.http.listen_address=:7474 # HTTPS Connector. There can be zero or one HTTPS connectors.
dbms.connector.https.enabled=true
dbms.connector.https.listen_address=:7473 # 关闭安全认证
dbms.security.auth_enabled=false

导入CSV

官方文档提供的导入方式

官方文档导入csv的方法

!!!注意:照着官网的例子被坑了,每次导入的时候都需要使用cypher语法创建对应的节点

导入csv的时候被导入的csv如果是本地文件必须放在neo4j安装目录的import文件夹中

例如:C:\gwc_apps\dev-tools\linux\neo4j-community-3.5.7\import

如果你的安装目录不存在import文件夹,就手动创建。

导入没有head的csv数据

artists.csv示例文件

1,ABBA,1992
2,Roxette,1986
3,Europe,1979
4,The Cardigans,1992

导入语句:

load csv from "file:///artists.csv" as line
create(n:Node{id:line[0],name:line[1],birth:line[2]})
return n
// 使用line[索引]来取得每一列的值

导入有header的关系数据

分步骤导入

导入人数据:

name
bart
homer
marge

导入语句:

load csv with headers from "file:///family.csv"
as row
merge (f:Family{name:row.name})
return count(f)
// 查询一下
match (f:Family) return f

导入关系数据:

from_name,relation,to_name
bart,父子,homer
bart,母子,marge
homer,父子,bart
marge,母子,bart
homer,夫妻,marge
marge,夫妻,homer

导入语句:

load csv with headers from "file:///family-relation.csv"
as row
match (f1:Family{name:row.from_name})
match (f2:Family{name:row.to_name})
merge (f1)-[r:Relation{name:row.relation}]->(f2)
return count(*)
// 查询一下
match (f:Family) return f

一次性导入

数据:

id,from_name,relation,to_name
1,bart,父子,homer
2,bart,母子,marge
3,homer,父子,bart
4,marge,母子,bart
5,homer,夫妻,marge
6,marge,夫妻,homer

导入语句:

load csv with headers from "file:///all.csv"
as row
merge (f1:Family{name:row.from_name})
merge (f2:Family{name:row.to_name})
merge (f1)-[r:Relation{name:row.relation}]->(f2)
return count(*)
// 查询结果
match (f:Family) return f
// 例子:查询所有和bart有关系的节点
match p=(f:Family{name:"bart"}) -->() return p
// 查询和bart有1度关系的节点
match p = (f:Family{name:"bart"})-[*..1]->() return p
// 查询所有父子关系的节点
match p=()-[r:Relation{name:"父子"}]->() return p

neo4j导入csv文件的更多相关文章

  1. 使用程序往Neo4j导入CSV报错

    今天在用程序向Neo4j导入csv文件时,报以下错误: java.net.ConnectException: Connection refused: connect java.rmi.ConnectE ...

  2. ACCESS导入CSV文件出现乱码解决办法

    在ACCESS或Excel中导入CSV文件时常常出现乱码,这是因为简体中文版的windows操作系统及其应用软件默认都是ANSI/GBK编码,而导入的文件使用的编码与操作系统默认的编码不相符.出现这种 ...

  3. C# 将List中的数据导入csv文件中

    //http://www.cnblogs.com/mingmingruyuedlut/archive/2013/01/20/2849906.html C# 将List中的数据导入csv文件中   将数 ...

  4. oracle导入csv文件

    oracle导入csv文件: 1.建好对应的表和字段: 2.新建test.ctl文件,用记事本编辑写入: load data infile 'e:\TB_KC_SERV.csv' --修改对应的文件路 ...

  5. python导入csv文件时,出现SyntaxError

    背景 np.loadtxt()用于从文本加载数据. 文本文件中的每一行必须含有相同的数据. *** loadtxt(fname, dtype=<class 'float'>, commen ...

  6. R: 导入 csv 文件,导出到csv文件,;绘图后导出为图片、pdf等

    ################################################### 问题:导入 csv 文件 如何从csv文件中导入数据,?参数怎么设置?常用参数模板是啥? 解决方 ...

  7. python导入csv文件出现SyntaxError问题分析

    python导入csv文件出现SyntaxError问题分析 先简单描述下碰到的题目,要求是写出2个print的结果 可以看到,a指向了一个列表list对象,在Python中,这样的赋值语句,其实内部 ...

  8. Oracle数据库导入csv文件(sqlldr命令行)

    1.说明 Oracle数据库导入csv文件, 当csv文件较小时, 可以使用数据库管理工具, 比如DBevaer导入到数据库, 当csv文件很大时, 可以使用Oracle提供的sqlldr命令行工具, ...

  9. java调用sqlldr导入csv文件数据到临时表

    package cn.com.file;import java.io.BufferedReader;import java.io.BufferedWriter;import java.io.File; ...

随机推荐

  1. nginx之启停操作及配置文件语法检测

    nginx的启停操作 ----nginx  启动 ----nginx -s stop 停止 ----nginx -s reload 重新加载 nginx -t 修改配置文件之后进行语法检验

  2. 委托 事件 observer

    详细介绍http://www.cnblogs.com/jcz1206/articles/2730793.html  ---摘录别人的 using System;using System.Collect ...

  3. 可修改的区间第K大 BZOJ1901 ZOJ2112

    http://blog.csdn.net/u014492306/article/details/47981315 //变相离线做法 离散化缩小区间范围,做两大个线段树,第一个就是普通的持久化树,有个前 ...

  4. UVALive8518 Sum of xor sum

    题目链接:https://vjudge.net/problem/UVALive-8518 题目大意: 给定一个长度为 $N$ 的数字序列 $A$,进行 $Q$ 次询问,每次询问 $[L,R]$,需要回 ...

  5. Android中的成员变量与局部变量

    简单说一下吧, note:java中的成员变量就是c++中的全局变量 1.可以在全局范围内使用:局部变量只能在其定义的方法里使用. 2.成员变量可以不赋初值使用,调用时有系统的默认的初值,比如int类 ...

  6. 快服务常见TOP3审核雷区,再不过审就要崩溃啦!

    仰天大笑出门去,审核提交很神气. 垂死病中惊坐起,突然驳回伤不起. 江州司马青衫湿,重新修改苦自知. 梦里花落知多少,回复马上就改好. 审批被驳回可能是最常见的令开发者头大的问题了,明明看起来&quo ...

  7. sql注入讲解

    1.输入1' 发现数据库报错,原因是我们的输入直接被代入到数据库查询语句里面. 2.有没有办法可以不让他报错呢?可以尝试一下构造正确的数据库语法,使之不报错.比如输入 1 and 1=1 试试 sel ...

  8. NIO 的非阻塞式网络通信

    1.阻塞与非阻塞   ①  传统的 IO 流都是阻塞式的.也就是说,当一个线程调用 read() 或 write()时, 该线程被阻塞,直到有一些数据被读取或写入,该线程在此期间不能执行其他任务. 因 ...

  9. Gauge框架在JS中的简单应用

    gauge框架简介 Gauge是一个轻量级的跨平台测试自动化工具. gauge安装[Win10 64位下测试] [百度网盘链接]https://pan.baidu.com/s/1bidE34gLLrS ...

  10. ie时间格式NAN-NAN-NAN

    js的日期对象可以识别的日期字符串有四种: 1.YYYY-MM-DD 2019-11-11 01:01:012.MM-DD-YYYY 11-11-2019 01:01:013.YYYY/MM/DD 2 ...