2017-03-25 5 views
2

React + Express + Node + Neo4jアプリケーションを使用しているNeo4jを初めて使用しました。私はthis queryを行う際Neo4j JavaScriptドライバ(bolt)IDによる作業中のCypherクエリ=>エラー:エンティティIDが整数値になると予想されました

私は、エラーメッセージ

Expected entity id to be an integral value

を得ました。

ただし、$idをハードコードされた数値、つまり5に変更した場合、結果が得られ、クエリが機能します。

私もid = {id}の代わり$idとしてなど{"id":5}{"id": '5'}、などのparamを渡す...とクエリ文字列でのparamを参照しようとした代わりに、ID(p)またはid(p)p.idを試みました。

助けてください!

答えて

3

あなたはのparamとしてCYPHERへのNode.jsから自然なIDを渡したい場合は、64ビット整数に変換必要がありますので、

MATCH (p) WHERE ID(p) = toInteger($id) RETURN p, ID(p) as id 
+0

感謝:

var params = { id: require('neo4j-driver').v1.int(5) } 

それともCYPHERクエリ自体で

多くのstdob!それはうまくいった。 –

関連する問題