我只有一个按键查询 - 就像这样 -
$ Sub = $ obj_store-> fetchOne(" SELECT 键 WHERE 键 HAS ANCESTOR KEY(订阅,$ key)");
我在其中一个字段
上设置了一个值$ Sub-> active = TRUE;
然后做一个upsert
$ obj_store-> UPSERT($子);
更新了一个值,但删除了其他现有列。如果我选择*,则不会删除值。
我需要避免完整记录读取以进行结算。
如何更新记录中的字段并避免删除所有其他字段?我使用php-gds包装器进行云数据存储。
欲望将是如下的查询 update subscribe set active = TRUE where keyid = 1234
答案 0 :(得分:1)
写入Cloud Datastore假设您正在发送“整个”实体。您无法像在关系数据库中那样更新实体的特定属性。就像您发现的那样,更新实体的正确方法是首先从数据存储区读取整个实体,然后更改一个或多个属性,然后保存。