Как выполнить Cypher в файле?

Я работаю над окнами. Я создал текстовый файл запроса Cypher с помощью блокнота. Как запустить запрос в файле с помощью консоли веб-интерфейса Neo4jShell или Neo4j.

Ответ 1

Просто добавьте -file в качестве параметра при запуске консоли.

На окнах это будет выглядеть так:

Neo4jShell.bat -file path/to/cql/file 

Или вы можете также распечатать результат в новый файл

Neo4jShell.bat -file path/to/cql/file > path/to/output/file

Я также уверен, что есть способ сделать это из оболочки, а не при запуске, как это однажды продемонстрировал мне Стефан Армбрустер, но ради бога, я не могу вспомнить, как он это сделал. Но этот подход работает также.

Ответ 2

В установках Debian/Ubuntu или любых * nix используйте следующие терминалы:

$neo4j-shell -c < path-to-cypher-query-file.cql

Обратите внимание, что каждый запрос cypher в файле должен заканчиваться точкой с запятой и должен быть отделен пустой строкой от другого запроса. Кроме того, окончание .cql (формат файла) не является обязательным.

Ответ 3

$ neo4j-shell -file query.cql

или используя cypher-shell

$ cat query.cql | cypher-shell

Ответ 4

Файл neo4jShell.bat удален после запроса этого вопроса. Новый подход к выполнению файлов cypher заключается в использовании веб-приложения под названием LazyWebCypher.

Ответ 5

С веб-интерфейсом Neo4j я просто копирую и вставляю.

На консоли я иногда использую завиток, чтобы поговорить с интерфейсом REST Neo4j. Это позволяет мне использовать те же запросы (со ссылками на отдельные параметры), которые у меня есть в моем приложении. Вы должны обернуть запрос в свой файл в объект 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

Ответ 6

./bin/neo4j-shell -path../data/databases/-c < commands.cql

на Neo4j 3.2.1