【问题标题】:updating entity with new attribute使用新属性更新实体
【发布时间】:2014-09-05 17:02:43
【问题描述】:

我在数据存储区中有 100 多个类似员工的实体。实体的键是登录应用程序的用户名。我需要使用一些默认值向 Employee 实体添加新属性。 如何一次更新所有实体?我无法使用每个用户帐户登录以使用新属性更新实体。

我更喜欢使用 java 来做到这一点。

【问题讨论】:

    标签: google-app-engine google-cloud-datastore


    【解决方案1】:

    如果您想要的是大规模更新,那么很遗憾,数据存储中没有。

    我建议获取完整的 Employee 表,然后遍历您的结果,将默认值添加到您的新属性,然后将实体放回原处。类似的东西(可能需要一些调整,这只是我的想法):

    Query q = new Query("Employee")
    PreparedQuery pq = datastore.prepare(q);
    
    for (Entity result : pq.asIterable()) {
        result.setProperty("newProperty","default Value");
        result.put();
    }
    

    记得更新你的模型,添加你想要的默认值。否则,您输入的任何新数据都不会具有该默认值。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-04-21
      • 1970-01-01
      • 2021-11-06
      • 2010-12-19
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多