无法使用休息密码在 Neo4j 中应用跳过、限制和排序子句



我在Grails中使用依赖neo4j-rest-graphdb:2.0.1使用Neo4j 2.1.5,我使用以下命令查询我的数据库

RestAPI restapi = new RestAPIFacade("http://localhost:7474/db/data") RestCypherQueryEngine rcqer=new RestCypherQueryEngine(restapi)

我创建了一个参数列表

Map<String, String> paramVal = new HashMap<>(); paramVal.put('limit', 10); paramVal.put('skip', 0); paramVal.put('order', 'name');

我的查询如下所示

String query = "match (c:MyLabel) return id(c) as Id, c.name as name skip ${param}.skip limit ${param}.limit;

像这样执行查询

result = rcqer.query(query,org.neo4j.helpers.collection.MapUtil.map("param",paramVal))"

这会显示错误Invalid input '.': expected whitespace, Limit, LOAD CSV,.....但是,当参数仅在where子句中使用时,效果很好。此外,仅使用 for order by 子句时,结果也不正常,并且没有任何错误。

请让我知道缺少什么或是否有限制。提前谢谢。

我不使用库的特定部分,但我希望您不需要直接引用param,因为这就是{}语法的用途(没有美元),这将使您的查询:

String query = "match (c:MyLabel) return id(c) as Id, c.name as name skip {skip} limit {limit}

最新更新