我正在尝试创建一个节点并添加一个设置值的新关系,但每次我都会收到相同的错误:
Invalid input '"': expected whitespace, comment, an identifier, UnsignedDecimalInteger, a property key name or '}' (line 6, column 3 (offset: 263))
" "Value": "2024-02-06T11:16:02.09Z""
这是我的疑问,有人可以告诉我我做错了什么吗?如果我在代码中发送此查询,那么它会成功运行,我无法确定这有什么问题。
非常感谢。
MATCH (n:Node),(additionalDate:AdditionalDate)
WHERE (n.Id = "xxxx1111xxxx11")
AND (additionalDate.DateType = "1")
CREATE (additionalDate)-[additionalDateOf:AdditionalDateOf]->(n)
SET additionalDateOf = {
"Value": "2024-02-06T11:16:02.09Z"
}
尝试这样设置:
MATCH (n:NodeA),(additionalDate:AdditionalDate)
WHERE (n.Id = "xxxx1111xxxx11")
AND (additionalDate.DateType = "1")
CREATE (additionalDate)-[additionalDateOf:AdditionalDateOf]->(n)
SET additionalDateOf.Value = "2024-02-06T11:16:02.09Z"
对于:
MERGE (n:NodeA {Id:"xxxx1111xxxx11"})
MERGE (additionalDate:AdditionalDate {DateType:"1"})
如果我向上面的查询添加返回,我会得到:
╒═══════════════════════════════╤═════════════════════════════════╤══════════════════════════════════════════════════════╕
│n │additionalDate │additionalDateOf │
╞═══════════════════════════════╪═════════════════════════════════╪══════════════════════════════════════════════════════╡
│(:NodeA {Id: "xxxx1111xxxx11"})│(:AdditionalDate {DateType: "1"})│[:AdditionalDateOf {Value: "2024-02-06T11:16:02.09Z"}]│
└───────────────────────────────┴─────────────────────────────────┴──────────────────────────────────────────────────────┘
正如 @nimrod-serok 所建议的,您可以使用点属性引用语法来设置
Value
的 additionalDateOf
属性。
或者,您可以从键中删除双引号:
MATCH (n:Node),(additionalDate:AdditionalDate)
WHERE (n.Id = "xxxx1111xxxx11")
AND (additionalDate.DateType = "1")
CREATE (additionalDate)-[additionalDateOf:AdditionalDateOf]->(n)
SET additionalDateOf = {
Value: "2024-02-06T11:16:02.09Z"
}
您分配给关系的属性键值是一个映射,其中键是标识符。您使用的是 JSON 数据格式,其中键被指定为字符串。
作为第三个选项,您可以在
CREATE
子句中内联属性规范:
MATCH (n:Node),(additionalDate:AdditionalDate)
WHERE (n.Id = "xxxx1111xxxx11")
AND (additionalDate.DateType = "1")
CREATE (additionalDate)-[additionalDateOf:AdditionalDateOf
{Value: "2024-02-06T11:16:02.09Z"}]->(n)