Neo4jでリレーションを一括で追加する方法

リレーションを追加するコマンドは次のとおりです。

MATCH (NODE1), (NODE2) WHERE NODE1.name = “NODE1” and NODE2.name = “NODE2” CREATE (NODE1)-[r:FLONT {name: “f”}]->(NODE2) RETURN r;

上記コマンドをコンソールから実行すればリレーションを追加することが出来ます。しかし、リレーションを一つ一つ追加するのは面倒です。なのでcypher-shellというツールを使用します。

Neo4jのbinフォルダ直下にリレーションを追加するコマンドを記載したファイルを配置します。ここではtest.outとします。

C:\neo4j\bin\test.out

次のコマンドをコマンドプロンプトかPowerShellで実行します。このとき要注意なのが、設定したユーザーとパスを引数で渡さないとエラーになります。私はこれで1時間くらいハマりました。

type test.out | cypher-shell.bat -u neo4j -p pass

参考:15.10. Cypher Shell – Chapter 15. Tools – Neo4j