でノードを見つけます。ただし、常に構文エラーが返されます。 Neo4j Webクライアントを使用してノードを返すため、クエリが正しいと確信しています。春データのNeo4jは、ラベル
SDNがノードを見つけることができないため、エラーが発生しますか。label
?
でノードを見つけます。ただし、常に構文エラーが返されます。 Neo4j Webクライアントを使用してノードを返すため、クエリが正しいと確信しています。春データのNeo4jは、ラベル
SDNがノードを見つけることができないため、エラーが発生しますか。label
?
これはCypherの制限であり、SDNの制限ではありません。パラメータとしてのラベル(または関係タイプ)はサポートされていません。 this and related feature requestsを参照してください。使用
あなたはこれを回避することができますwhere句やラベル(N)機能:
MATCH (n:TNode)
WHERE {0} in labels(n)
RETURN n
これは警告が付属しています - それはMATCH句で一致したすべてのノードを通過します。あなたの状況で:TNodeラベルは問題を解決するかもしれませんが、一般的に単純なMATCH(n)を持つことはデータベース内のすべてのノードを通過しますが、これは非常に遅くなります。
その他のオプションは、手動でクエリを作成し、クエリを実行するためにorg.springframework.data.neo4j.template.Neo4jOperations番号のqueryForObjectsを使用することです:
String query = "MATCH (n:TNode:" + type + ") RETURN n"; // ugly, but works, beware of query injections etc..
Collection<TNode> nodes = neo4jOperations.queryForObjects(TNode.class, query, params);