我已经开始学习NEO4J,并认为我在开发基本的Cypher行方面做得很好,并成功加载了我的第一个CSV文件。
然后,我需要为节点添加唯一性约束,这就是我碰壁的地方。该软件拒绝接受该命令,尽管我多次检查了语法并重新输入了很多次,但仍以某种方式将“ is UNIQUE”或“ IS UNIQUE”中的“ I”或“ i”识别为意外字符。
即使从完全空白的新数据库开始,我也会收到这个奇怪的错误。我找到了一种解决方案,方法是将节点名称“ Investor”重命名为“ F_Investor”,但是问题又返回到下一个条目(对于“ Issuer”)。
我附上了有助于您理解问题的屏幕截图。
[1]-命令行屏幕顶部,“ Investor”中的“ In”已突出显示为绿色?
[2]-命令行,这一次突出显示了“ Issuer”中的“ Is”。
[3]-在这里,我已重命名为“ R_Issuer”,但随后发现错误……
[4]-通过重命名为“ F_Investor”可以在这次(为什么不是上次?)上有效的解决方案
对此我的任何沮丧都将受到欢迎!
谢谢!
[1] https://pasteboard.co/HHzMHLa.png
[2] https://pasteboard.co/HHzNg1c.png
答案 0 :(得分:1)
所有失败的命令都有一个共同点:您在断言中使用:
而不是.
。
... ASSERT i:name IS UNIQUE
不正确,这是语法错误的原因。
... ASSERT i.name IS UNIQUE
是正确的,请注意,我们使用点符号来表示节点的属性。