如何检查Neo4j全文索引是否存在?

如何检查Neo4j全文索引是否存在?,neo4j,Neo4j,我在同一标签和属性上有两个索引;一个全文索引和一个btree索引。如何检查全文索引是否存在 根据,我应该能够使用YIELD和WHERE过滤SHOW的输出,但这似乎对索引不起作用: Invalid input 'Y': expected whitespace, comment, type of show output, ';' or end of input (line 1, column 14 (offset: 13)) "SHOW INDEXES YIELD name, type&q

我在同一标签和属性上有两个索引;一个全文索引和一个btree索引。如何检查全文索引是否存在

根据,我应该能够使用
YIELD
WHERE
过滤
SHOW
的输出,但这似乎对索引不起作用:

Invalid input 'Y': expected whitespace, comment, type of show output, ';' or end of input (line 1, column 14 (offset: 13))
"SHOW INDEXES YIELD name, type"
以下查询可以工作,但会发出有关
db.indexes
的弃用警告:

CALL db.indexes() YIELD name, type
WHERE name = "usernames" AND type = "FULLTEXT"
RETURN count(name) > 0
可查看列表(但不可操作) 重新创建索引时出错? 如果不存在,则使用

贬低 不幸的是,没有一种不推荐使用的方法可以获得一个索引列表,您可以根据您的示例对其进行操作。然而,反对并不意味着你不应该使用它。弃用通常(在语义版本控制中)意味着该方法在下一个主要版本中将不可用,或将发生重大更改。别担心,Neo4j 5还有很长的路要走

工具书类

弃用警告只是一条消息,说明db.index将在将来的版本中被替换或过时。我使用的是Neo4j服务器版本:4.1.5(企业版),您的查询可以正常工作。谢谢,是的,它可以正常工作,但弃用警告通常是不应该使用的标志。我更愿意使用一个合适的解决方案,而不必在几个月后再讨论这个问题
SHOW [ALL|BTREE] INDEX[ES] [BRIEF|VERBOSE [OUTPUT]]

SHOW ALL INDEX VERBOSE
CREATE INDEX usernames IF NOT EXISTS FOR (u:User) ON (u.username)