重命名文档密钥Arango数据库

时间:2019-05-03 15:39:00

标签: nosql arangodb

我在ArangoDB中已有一个集合。但是,文档“密钥”中有一个错字。

是否可以在Arangodb中的所有文档中重命名给定的Key?

2 个答案:

答案 0 :(得分:2)

要更改实际的属性名称,可以使用类似于以下AQL的名称:

FOR t IN test1
//FILTER t._key == '299'   //optional filter
UPDATE t WITH {
    potato: t.Potatoe,
    Potatoe: null
    }
IN test1 
OPTIONS { keepNull: false }

在上面的AQL中,我们添加了一个新属性(马铃薯),将值设置为原始属性(马铃薯)的值,然后将原始属性设置为null。最后,我们使用keepNull选项告诉系统删除​​Potatoe属性。

请注意,上面的AQL将仅删除语句结果中的空值。因此,如果表中的'rice'属性已经为空,则由于'rice'不是update语句的一部分,系统将不会删除它。

答案 1 :(得分:0)

如果是系统性畸变,请使用AQL-Update语句,例如:

FOR c IN collection
    FILTER c.pointer == OFFENDING_KEY
    LET newC = {pointer: CORRECT_KEY}
    UPDATE c WITH newC IN collection OPTIONS {exclusive: true}