Neo4j 版本为 3.1.1,操作系统为 win10。
对我来说,LOAD CSV 将从 Neo4j_Database_Location/testDB/import/artists.csv 读取。
一开始我把csv文件放在路径F:\code\java\helloworld\artists.csv,我的密码语句是
LOAD CSV FROM 'file:///F:\\code\\java\\helloworld\\artists.csv' AS line
CREATE(:Artist {name:line[1],year:toInt(line[2])})
然后我得到如下返回的错误信息:
Couldn't load the external resource at: file:/D:/Neo4j/db/testDB/import/code/java/helloworld/artists.csv
这意味着neo4j本身连接文件路径。
“D:/Neo4j/db/testDB/import/”是Neo4j数据库位置,“code/java/helloworld/artists.csv”是csv文件位置。
例如,我将 Neo4j 安装在路径 D:\Neo4j\Neo4j CE 3.1.1,数据库位置为 D:\Neo4j\db。我将 CSV 文件放在路径 D:\Neo4j\db\testDB\import\artist.csv 上。如果路径上没有“import”文件夹,请自行创建,并将文件放入“import”文件夹。
然后,把你的csv文件放到路径下,输入cyper语句:
LOAD CSV from 'file:///artist.csv' as LINE
CREATE(:Artist {name:line[1],year:toInt(line[2])})
总之,只要把CSV文件放到正确的路径下,问题就可以解决了。
LOAD CSV developer-manal中的相关说明
如果 dbms.directories.import 设置为默认值 import,则在 LOAD CSV 中使用上述 URL 将分别从 /import/myfile.csv 和 import/myproject/myfile.csv 读取。
如果设置为 /data/csv,则在 LOAD CSV 中使用上述 URL 将分别从 /data/csv/myfile.csv 和 /data/csv/myproject/myfile.csv 读取。