The CREATE INDEX <indexName>
命令不是幂等的,如果给定索引已存在,则会导致错误。我是 neo4j 的新手,找不到避免此错误的谓词。我尝试过各种排列ANY(...)
,并且它们都在“db.indexes()”处呕吐。
Since CREATE INDEX ...
如果索引存在并且失败DROP INDEX ...
如果没有,就会失败,我不知道如何编写仅在需要时创建索引的 .cypher 文件。
简短的形式可能类似于CREATE INDEX indexName FOR (c:SomeLabel) ON (c.someProperty) IF NOT EXISTS
,但当然这个缩写形式不存在。
有没有办法用谓词、子查询或类似的表达式来做到这一点?
从 Neo4j 4.1.3 开始,引入了新的索引创建语法来做到这一点
CREATE INDEX myIndex IF NOT EXISTS FOR (t:Test) ON (t.id)
搜索性能索引 https://neo4j.com/docs/cypher-manual/current/indexes-for-search-performance/
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)