2017-02-22 17 views
0

私は数ヶ月間Neo4jを使用してきましたが、かなり怒っています。 新しいバージョンがすべて前のバージョンを壊すように見えます。 コマンドラインから実行できない複数のCypher Loadスクリプトがあります。NEO4J 3.1.1 CSVをロード

私は、ブラウザから以下のことを実行できます。

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エラーが発生します。一般的な合意は完全な.tarバージョンを実行することです、私はそれをインストールしました。

ブラウザから、またはcypher-shellを使ってCypherを実行できるようになりました。しかし、これは外部スクリプトを呼び出す方法がないので役に立たないので、何百ものスクリプトでこれを行う必要があります。

おすすめですne04j-shell(廃止予定です!) neo4j-shellを試してみます。これはパス内のスペースを受け入れません!

は、私は、ファイルを移動し、次を実行してみてください:プロンプトが表示されたら、私はホスト名を追加するなど、様々な組み合わせを試してみました

ERROR (-v for expanded information): 
    Error starting org.neo4j.kernel.impl.factory.GraphDatabaseFacadeFactory, 

D:\nosql\neoDB\databases\graph.db

:私は次のエラーを取得する

"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" 

non-JRMP server at remote endpoint 

-config paramを追加しようとしましたが、これは再びスペースを許可しません!

新しいバージョンが登場するたびに、実際にNeo4jにデータをインポートするのが難しくなっているようです。

私の質問は、バージョン3.1.1では、手動で1つ1つを実行することなく、同時に複数のcypherスクリプトを実行できますか? バージョン3.1.1ではneo4j-shellを使用できますか?

答えて

0

cypher-shellの中のAPOC手順apoc.cypher.runFileを試してください。ここでは(Windows用にフォーマットさfile URLで)の例である:

CALL apoc.cypher.runFile("file:d:/nosql/Load data/load_person.cql"); 

パスにスペースがまだ問題を提示した場合、あなたは「loaddataの」に「ロードデータ」フォルダの名前を変更し、それに応じて上記のクエリを修正することができます。

+0

ありがとう。私はこれを試しましたが、バージョン3.1.1ではapocプロシージャが動作しません。 –

+0

申し訳ありませんが、私はすでにこれを試しましたが、apocプロシージャはバージョン3.1.1では動作しません。 これはneo4j.confのconigurationの設定が必要です。 apoc.import.file.enabled =私はこれを設定してのNeo4jを再起動し、しかしPROCを実行する上で、私は次のエラーメッセージを取得している 真: は に失敗しました。プロシージャ 'apoc.cypher.runFile'を呼び出します。原因:java.lang.RuntimeException:ファイルからのインポートが有効になっていません。neo4j.confにapoc.import.file.enabled = trueを設定してください –

0

私は回避策を見つけることができました。

  • データベース
  • アンインストールのNeo4j
  • が3.0のNeo4jインストール作成のNeo4j 3.1.1
  • をインストールします。8
  • 私は、これは本番環境でそれをカットするために起こっているとは思わないのNeo4j 3.1.1

をインストールし、私のサイファースクリプト

e.g. java -cp "C:\Program Files\Neo4j CE 3.0.8\bin\neo4j-desktop-3.0.8.jar" org.neo4j.shell.StartClient -file "D:/nosql/Load data/load_person.cql"

  • アンインストールのNeo4j
  • を実行しますしかし:

関連する問題