使用map更新节点属性而不删除现有属性

时间:2014-03-31 15:39:26

标签: java neo4j

有没有办法使用地图更新节点而不删除现有属性?

例如:我的节点道具是:

{
   id   : 123,
   name : "foo"
}

现在我需要发送相同ID的地图,但具有不同的属性:

{
   id   : 123,
   age  : 30
}

如果我这样做,名称属性将从节点中删除。

我无法手动设置属性,因为它们是动态的,并且每个请求可能不同。

更新:我这样做是将Cypher查询与params一起发送到REST API。

1 个答案:

答案 0 :(得分:0)

MERGE是您更新的朋友。

有些事情:

{ "query" : "MERGE (n:Node {id: {idValue}}) ON MATCH SET n.age = {ageValue}",
  "params" : { "idValue" : "123", "ageValue" : "30"}
}

...并将其发送到Cypher端点。

http://docs.neo4j.org/refcard/2.0/有MERGE详细信息。

http://docs.neo4j.org/chunked/stable/rest-api-cypher.html将有助于发送REST参数。