2016-12-20 6 views
0

MySQLデータベースの選択クエリから2つの値を抽出しました。最初のプロパティーにはプロパティー名が含まれ、2番目のプロパティーにはプロパティーの値が含まれます。パラメータクエリここでは、プロパティ名とプロパティ値の両方を決定する内容を割り当てます

は、最初のフィールドで名前に値を代入する、すなわち何か

などのSET名をパラメータを使用しての方法は、それがでそうすることはできませんrow.Property_Name = row.Property_Valueに

答えて

1

ありますCypherのみ:n[name]の構文ではreadになりますが、動的な名前のプロパティは書き込まれません。

ただし、現時点ではドキュメントには記載されていませんが、APOC手順で行うことができます:apoc.create.setProperty() APOCの3.03.1のブランチにあるので、Neo4j 3.xのインスタンスと一緒に行くのがよいです。

CALL apoc.create.setProperty(n, row.Property_Name, row.Property_Value) 
+0

有望です。まだありません。エラーを取得しています: クエリ内のプロシージャー呼び出しは暗黙のうちに名前を明示的に(名前は明示的に 'YIELD'を使用して)指定していません(行18、列3(オフセット:720)) " CALL apoc.create.setProperty Property_Name、row.Property_Value) " – wikitect

1

これらのキーと値のペアをマップに変更することができれば、それらをノードに設定できます。マップは、パラメータに変更された場合

構文は、ノードの列nに次のようになります。

SET n += $map 

あなたはドキュメントのSET clauseを確認することをお勧めします。

関連する問題