我正在开发Windows。我使用记事本创建了Cypher查询的文本文件。如何使用Neo4jShell或Neo4j Web界面控制台在文件中运行查询。
答案 0 :(得分:13)
在Debian / Ubuntu或任何 * nix 安装中,使用终端中的以下内容:
$ neo4j-shell -c < path-to-cypher-query-file.cql
请注意,文件中的每个cypher查询必须以分号结尾,并且必须用另一个查询中的空行分隔。此外,.cql
结尾(文件格式)不是必需的。
答案 1 :(得分:8)
启动控制台时,只需添加-file
作为参数。
在Windows上,它看起来像这样:
Neo4jShell.bat -file path/to/cql/file
或者您也可以将结果打印到新文件
Neo4jShell.bat -file path/to/cql/file > path/to/output/file
我也确定有一种方法可以在shell中进行,而不是在启动时,就像Stefan Armbruster曾向我展示的那样,但是对于上帝的爱,我不记得他是怎么做到的。但这种方法也有效。
答案 2 :(得分:5)
$ neo4j-shell -file query.cql
或使用cypher-shell
$ cat query.cql | cypher-shell
答案 3 :(得分:4)
自问这个问题以来,neo4jShell.bat文件已被删除。执行cypher文件的新方法是使用名为LazyWebCypher的Web应用程序。
答案 4 :(得分:2)
使用Neo4j网络界面,我只需复制和粘贴。
在控制台上,我有时会使用curl与Neo4j的REST界面交谈。这允许我在我的应用程序中使用相同的查询(引用单独的参数)。 您必须将文件中的查询包装到json对象中。
data.json:
{
"query":"match (u:User) where u.username={username} return u",
"params":{"username":"trenkerbe"}
}
命令:
curl -i -X POST -H "Content-Type: application/json" -d @data.json http://localhost:7474/db/data/cypher
答案 5 :(得分:0)
./ bin / neo4j-shell -path ../data/databases/ -c&lt; commands.cql
on Neo4j 3.2.1