本周初,当我尝试在我认为要共享的节点上创建数组属性时,遇到了一个有趣的Cypher错误消息。
这是我写的Cypher查询:
CREATE (:Person {id: [1, "mark", 2.0]})
导致此错误:
Neo.ClientError.Statement.TypeError
Property values can only be of primitive types or arrays thereof.
实际上,我们存储着一组原始元素,但是我们混合了不同类型的元素,这是不允许的。 让我们尝试将所有值强制转换为字符串:
CREATE (:Person {id: [value in [1, "mark", 2.0] | toString(value)]})
Added 1 label, created 1 node, set 1 property, completed after 4 ms.
成功!
本文探讨了在Neo4j中使用Cypher查询语言创建节点时遇到的属性值类型错误。具体地,当尝试在一个节点上创建包含不同类型元素的数组属性时,Neo4j抛出了错误。文章通过一个示例展示了如何通过将所有数组元素转换为字符串来解决此问题。

1679

被折叠的 条评论
为什么被折叠?



