我已经使用 Neo4j 好几个月了,现在非常生气。似乎每个新版本都打破了以前的版本。我有多个无法再通过命令行运行的 Cypher Load 脚本。
我可以从浏览器运行以下命令:
USING PERIODIC COMMIT 1000
LOAD CSV WITH HEADERS FROM "file:///person.csv" AS csvLine
MERGE (p:Person {sysurn : csvLine.urn})
ON CREATE SET p.dob = trim(csvLine.dob)
ON CREATE SET p.forename = trim(csvLine.forename)
ON CREATE SET p.surname = trim(csvLine.surname );
以前在版本 3.0.3(社区版)中,我运行了以下命令:
java -cp "C:\Program Files\Neo4j CE 3.0.3\bin\neo4j-desktop-3.0.3.jar" org.neo4j.shell.StartClient -file "D:/nosql/Load data/load_person.cql"
这不再适用于 3.1.1:
java -cp "C:\Program Files\Neo4j CE 3.1.1\bin\neo4j-desktop-3.1.1.jar" org.neo4j.shell.StartClient -file "D:/nosql/Load data/load_person.cql"
我收到一个 Java 错误。普遍的共识是运行完整的 .tar 版本,所以我安装了它。
我现在可以从浏览器或使用 cypher-shell 运行 Cypher。然而,这是没有用的,因为没有办法调用外部脚本,所以我必须为可能数百个脚本执行此操作。
建议使用 ne04j-shell(现已弃用!)我尝试使用 neo4j-shell。这不接受路径中的空格!
我移动文件并尝试运行以下命令:
"C:\Program Files\neo4j-community-3.1.1\bin\neo4j-shell" -path "D:/nosql/neoDB/databases/graph.db" -config "neo4j.conf" -file "D:/nosql/Loaddata/load_person.cql"
我收到以下错误:
ERROR (-v for expanded information): Error starting org.neo4j.kernel.impl.factory.GraphDatabaseFacadeFactory,
D:\nosql\neoDB\databases\graph.db
我尝试了各种组合,包括根据提示添加主机名:
non-JRMP server at remote endpoint
我尝试添加 -config 参数,但是这又不允许空格!
随着每个新版本的出现,将数据实际导入 Neo4j 似乎变得更加困难。
我的问题是,在版本 3.1.1 中是否可以一次运行多个密码脚本而无需手动运行每个脚本?是否可以在 3.1.1 版本中使用 neo4j-shell?