ahe*_*rve 1 indexing neo4j cypher
我想在neo4j 2.0上创建一些索引,但我无法理解这里有什么问题.从一个新的数据库开始,我的输入命令看起来像
CREATE INDEX ON :user(name);
CREATE INDEX ON :root(root);
CREATE INDEX ON :origin(origin);
CREATE INDEX ON :gender(gender);
create (n1:root {root : 'root'}),(n2:gender {gender : 'female'}),(n3:gender {gender : 'male'}),(n4:origin {origin : 'english (modern)' }),(n5:origin {origin : 'finnish' }),(n6:user {name : 'aaliyah'}),(n7:user {name : 'aapeli'}),(n8:user {name : 'aapo'});
Run Code Online (Sandbox Code Playgroud)
此时一切看起来都很好(请参阅下面的输出)但是当我尝试使用索引时出现错误:
neo4j-sh (0)$ start n=node:user(name="aapo") return n;
MissingIndexException: Index `user` does not exist
Run Code Online (Sandbox Code Playgroud)
知道为什么会这样吗?请注意,在索引之前创建节点不会更改任何内容.
提前致谢
输出我的第一个命令:
neo4j-sh (0)$ CREATE INDEX ON :user(name);
+-------------------+
| No data returned. |
+-------------------+
Indexes added: 1
235 ms
neo4j-sh (0)$ CREATE INDEX ON :root(root);
+-------------------+
| No data returned. |
+-------------------+
Indexes added: 1
246 ms
neo4j-sh (0)$ CREATE INDEX ON :origin(origin);
+-------------------+
| No data returned. |
+-------------------+
Indexes added: 1
173 ms
neo4j-sh (0)$ CREATE INDEX ON :gender(gender);
+-------------------+
| No data returned. |
+-------------------+
Indexes added: 1
160 ms
neo4j-sh (0)$ create (n1:root {root : 'root'}),(n2:gender {gender : 'female'}),(n3:gender {gender : 'male'}),(n4:origin {origin : 'english (modern)' }),(n5:origin {origin : 'finnish' }),(n6:user {name : 'aaliyah'}),(n7:user {name : 'aapeli'}),(n8:user {name : 'aapo'});
+-------------------+
| No data returned. |
+-------------------+
Nodes created: 8
Properties set: 8
Labels added: 8
1027 ms
Run Code Online (Sandbox Code Playgroud)
通过Cypher创建的索引称为Schema索引,不能在该START子句中使用.该START条款的索引查找保留给您通过自动索引,或通过非Cypher支架的API创建的旧索引.
要使用您创建的:user索引,您可以执行以下操作:
match n:user
where n.name="aapo"
return n;
Run Code Online (Sandbox Code Playgroud)
尝试一下profile.
| 归档时间: |
|
| 查看次数: |
2786 次 |
| 最近记录: |