2013-07-04 26 views
8

私は窓で作業しています。メモ帳を使用してCypherクエリのテキストファイルを作成しました。 Neo4jShellまたはNeo4j Webインターフェイスコンソールを使用してファイル内のクエリを実行するにはどうすればよいですか。ファイルでCypherを実行するには?

答えて

5

コンソールを起動するときにパラメータとして-fileを追加するだけです。 Windows上で

、それは次のようになります。

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

またはあなたはまた、新しいファイルに結果を印刷することができ

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

私もそれを行う方法があると確信していますStefan Armbrusterが私にかつて実証したように、起動時ではなくシェル内からのものですが、神の愛のために、私は彼のやり方を覚えていません。しかし、このアプローチも同様に機能します。

2

Neo4jウェブインターフェイスでは、私はコピー&貼り付けをしています。

コンソールでは、curlを使ってNeo4jのRESTインターフェイスと話すことがあります。これにより、私のアプリケーションにある同じクエリ(別々のパラメータへの参照を使用)を使用することができます。 ファイル内のクエリをjsonオブジェクトにラップする必要があります。

data.json:

{ 
    "query":"match (u:User) where u.username={username} return u", 
    "params":{"username":"trenkerbe"} 
} 

コマンド:Debianの/ Ubuntuのまたは任意の* nixのインストールで

curl -i -X POST -H "Content-Type: application/json" -d @data.json http://localhost:7474/db/data/cypher 
13

、端末から次のコマンドを使用します。

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

各サイファーqファイル内の行はセミコロンで終わらなければならず、他のクエリーから空行で区切らなければなりません。また、.cqlの終了(ファイル形式)は必須ではありません。

+0

現在、これを実行すると、コメントアウトされたコードも実行しようとします。これを避けるより良い方法があります。大したことではない、ちょうど好奇心が強い – NumenorForLife

3

この質問が尋ねられたので、neo4jShell.batファイルが削除されました。 cypherファイルを実行する新しい方法は、LazyWebCypherというWebアプリケーションを使用することです。

+1

'neo4j-shell.bat'がまだ存在する、[あなたはただそれを得るためにzipファイルをダウンロードする必要がある](https://neo4j.com/developer/kb/using-neo4j- shell-neo4j-ce-3x /)。しかしそれは廃止されましたが、公式の交換は 'cypher-shell'です。 –

0

./bin/neo4j-shell -path ../data/databases/ -C < commands.cqlのNeo4jに

3.2.1

+0

最新バージョンでは '-c'は必要なくなりました。 – Bill

0
$ neo4j-shell -file query.cql 

又は使用cypher-shell

$ cat query.cql | cypher-shell 
関連する問題