Couchbase - 更新文档中的对象

Couchbase - updating object inside a document

如果我有以下文件为例: { “制造”:“宝马”, “make1”:“奥迪” }

当我执行 UPDATE 查询 UPDATE Translations SET make2 = “MERCEDES” WHERE META().id = “CARS” 时,查询没有问题,make2 被添加到文档中。

当我执行 UPDATE 查询 UPDATE Translations SET make2.MODEL = “CLS”, make2.MODIFICATION = “500” WHERE META()。 id = "CARS" 查询 returns “成功”,但没有添加任何内容。如果 make2 已经存在,一切都按预期更新,只有当对象不存在时才会出现问题。

如果父 属性 是 JSON 对象,则只能更新嵌套属性。如果父属性设置为字符串,更新将不会成功,与您所说的相反。

这会起作用:

UPDATE Translations USE KEYS "CARS" 
    SET make2 = {};
UPDATE Translations USE KEYS "CARS" 
    SET make2.MODEL = "CLS", d.make7.MODIFICATION = "500";

或者您可以在一行中执行此操作:

UPDATE Translations USE KEYS "CARS" 
    SET make2 = {}, make2.MODEL = "CLS", d.make7.MODIFICATION = "500";