如何使用Neo4j中的Cypher从一个目录中的文件批量导入csv数据?

如何使用Neo4j中的Cypher从一个目录中的文件批量导入csv数据?,neo4j,Neo4j,您好,我正在尝试将数据导入Neo4j。我知道 LOAD CSV WITH HEADERS FROM "http://docs.neo4j.org/chunked/2.1.3/csv/import/persons.csv" AS csvLine CREATE (p:Person { id: toInt(csvLine.id), name: csvLine.name }) 适用于一个文件。但是如果我在同一个目录中有800多个文件呢?现在,您可以使用shell脚本将这些查询依次发布到服务器,或者使用

您好,我正在尝试将数据导入Neo4j。我知道

LOAD CSV WITH HEADERS FROM "http://docs.neo4j.org/chunked/2.1.3/csv/import/persons.csv" AS csvLine
CREATE (p:Person { id: toInt(csvLine.id), name: csvLine.name })

适用于一个文件。但是如果我在同一个目录中有800多个文件呢?

现在,您可以使用shell脚本将这些查询依次发布到服务器,或者使用该语句执行neo4j shell

for file in *.do; do
   bin/neo4j-shell -c "LOAD CSV WITH HEADERS FROM 'file:///users/abc/import/${file}' AS csvLine
CREATE (p:Person { id: toInt(csvLine.id), name: csvLine.name })"
done

为什么“bash:bin/neo4jshell:No-this-file或directory”?我有点困惑应该把dir名称放在哪里?如果我想加载所有csv文件,你能在代码中显示吗file:///home/nate/Downloads/a 目录(它只包含csv文件)?我将这800个文件合并成一个大的csv文件。它是400MB,仍在运行查询..我在REST/Cypher中尝试了几种不同的方法,比重复加载CSV行800多次做得更好,但没有成功。我认为您可能需要使用其中一个编程API来完成此任务。