2012-12-06 60 views
0

我试图在neo4j shell中将精确索引类型设置为全文索引,因此我可以使用lucene查询对incasesensitive进行搜索。所以我用这个命令:Neo4j - 索引查找问题

index --set-config Destination type fulltext 

但它没有工作。仍然无法执行不区分大小写的搜索,因此需要进行调整并更改其他一些值,例如_blueprints:type和to_lower_case。 这没有任何好处。

现在它以某种方式忽略名称值(奇怪!)的第一个字符。因此,例如,如果我搜索“伦敦”,并输入“Lon”,则不会返回任何内容。但是,如果我输入“ond”,它会返回节点。每个节点都一样。

我试着将一切都恢复正常。没有帮助。

我搞砸了什么?我错过了什么?

我正在使用Everyman PHP库与数据库进行通信。

+0

我认为当你把它改为全文时,不仅仅是新的实体正在全文搜索。旧的实体保持旧的配置。 – ulkas

回答

1

我用“to_lower_case”属性创建了新的索引。 我认为这将解决我的问题,只需将字符串转换为小写,然后再将其插入查询。它似乎工作。

0

事后设置配置不会更新已经索引的值(就像shell注释,我认为)。如果您使用“to_lower_case = true”创建了索引,则添加以及查询将将值转换为小写。调用索引#get仍然会要求你自己小写。