精华
load csv 指令的csv文件路径问题
我们的Neo4j服务器安装目录下已经有一个import目录。最佳做法是从这个目录下导入,因为这样可以保证你的LOAD CSV语句在别的电脑环境下也可以运行 比如下面命令可以在Linux下工作但对其它操作系统的文件路径则可能不行:
LOAD CSV WITH HEADERS FROM
'file:////home/jerome/Tools/neo/neo4jcommunity-
3.2.0/import/level1/artists-with-headers.csv' AS
line
CREATE (:Artist {name: line.Name, year: toInt(line.Year)})
所以最好把csv文件放到import目录下,注意,事先,进入$NEO_HOME/conf/neo4j.conf配置文件并取消这一行的注释:
dbms.directories.import=import
像这样,指定路径就把import作为其根目录(需要服务重启)。比如我们有个需要导入的文件在$NEO_HOME/import/level1/下,那么Cypher语句可以写成这样:
LOAD CSV WITH HEADERS FROM
'file:/// level1/artists-with-headers.csv' AS line
CREATE (:Artist {name: line.Name, year: toInt(line.Year)})
注意那里是3个斜杠!