【发布时间】:2013-05-10 05:26:55
【问题描述】:
我打开了节点自动索引,它正在索引我需要的属性。如果我启动 Neo4j 服务器并打开 webadmin,我看到有一个名为 node_auto_index 的索引,根据 this 帖子。它可以在 web 管理员中完美运行,我可以像这样运行 Cypher 查询:
START n=node:node_auto_index('__type:user AND __username:admin') RETURN n
查询返回的正是我所期望的。但是,如果我关闭服务器并从 Scala 应用程序以嵌入式模式打开数据库,这将不起作用。如果我尝试运行相同的 Cypher 查询,我会收到 node_auto_index 不存在的错误。我检查了 GraphDatabaseService 属性,并且自动索引已启动并在正确的键上运行,但是当获取所有索引名称的列表时,该列表始终为空。而且我不能使用 AutoIndex API,因为它只索引一个属性,而且我肯定需要两者。
那么从现在开始,从我的 Scala (Java) 代码中查询具有多个属性的自动索引的最佳方法是什么?
编辑:我注意到 ReadableIndex 接口(这就是自动索引)可以接受查询字符串。我找不到太多关于它的文档,所以我将尝试一些事情,但是有没有机会进行 Cypher 查询?或者只是我上面查询中的单引号字符串?
【问题讨论】:
-
您使用什么代码从 Scala 运行 Cypher 查询?
-
我正在使用这个确切的代码:docs.neo4j.org/chunked/milestone/tutorials-cypher-java.html。但实际上我只是想通了我的问题。我现在将回答我自己的问题。
标签: neo4j