Arangodb 在AQL中,如何重新设置顶点的父级

Arangodb 在AQL中,如何重新设置顶点的父级,arangodb,Arangodb,我正在尝试重新设置顶点的父对象。我试过了,但似乎没有效果 FOR c IN pm_child FILTER c._to == 'pmlibrary/48198494363' UPDATE c WITH {_from: 'pmattic/48212650139'} IN pm_child 当我查看pm_儿童收藏时,字段中的_未被触及。修改边的正确方法是什么?作为\u键-属性\u from和\u to 所以,虽然可以在创建文档时指定它们,但以后不能更改它们 您需要使用新的\u from和\u to

我正在尝试重新设置顶点的父对象。我试过了,但似乎没有效果

FOR c IN pm_child FILTER c._to == 'pmlibrary/48198494363' UPDATE c WITH {_from: 'pmattic/48212650139'} IN pm_child

当我查看pm_儿童收藏时,字段中的_未被触及。修改边的正确方法是什么?

作为
\u键
-属性
\u from
\u to

所以,虽然可以在创建文档时指定它们,但以后不能更改它们

您需要使用新的
\u from
\u to
创建一个新文档,以实现所需的功能

但是还没有找到一个很好的解决方案

我将给你一个例子来说明如何做到这一点-让鲍勃成为查理的朋友,然后断开鲍勃戴安娜。我们需要创建一个新的文档,以便使用现有的edge及其新的
\u to

FOR rel IN relation FILTER rel._id == "relation/bobAndDiana"
  LET newRel = MERGE(rel, {_to: "persons/charlie",
                           _id:"relation/bobAndCharlie",
                           fieldToWhipe: null,
                           _key: "bobAndCharlie"})
  INSERT newRel IN relation RETURN newRel
并在另一个查询中删除原始边缘(您可能希望为此写入事务):


ArangoDB 3.0发行版将使
\u从
\u直接更新到
成为可能。

感谢您的帮助以及对我所有问题的快速简洁的回答。正是由于这种支持,我对进入ArangoDB感到兴奋。作为这个问题的后续问题,我发现您必须在合并中创建一个新的id和密钥。有没有办法让系统生成这些或至少确定一个保证唯一的设置?仅供参考,在我的情况下,它更容易一些,我只是创建了一个事务来删除现有的边缘并插入另一个边缘(因为这些边缘没有任何附加字段)。再次感谢您的指导。谢谢您的客气话;->您需要输入一个
null
值,这将导致字段取消设置,以便数据库可以为您生成该字段。我编辑了查询以演示这一点。
FOR rel IN relation FILTER rel._id == "relation/bobAndDiana" REMOVE rel IN relation