如何以编程方式更新 appengine 数据存储中的数据?

How to update data in appengine datastore programmatically?

我刚开始使用 appengine datastore 并正在寻找一种在获取数据时更新数据的方法。这是代码:

DatastoreService datastore = DatastoreServiceFactory.getDatastoreService();
Query q = new Query("Users").addFilter("value", Query.FilterOperator.EQUAL, 1);
PreparedQuery pq = datastore.prepare(q);
    if(pq!=null) {

        for (com.google.appengine.api.datastore.Entity result : pq.asIterable()) {
            nodeID = result.getProperty("nodeId").toString();
            result.setProperty("value",0);
            datastore.put(result);
            break;

        }
    }

正在获取数据,但无法更新 datastore 中的 value 字段。我在这里做错了什么?

我试过你上面的代码,对我来说效果很好。

DatastoreService datastore =  DatastoreServiceFactory.getDatastoreService();
Query q = new Query("Users").addFilter("value", Query.FilterOperator.EQUAL, 1);
PreparedQuery pq = datastore.prepare(q);
if(pq!=null) {

    for (com.google.appengine.api.datastore.Entity result : pq.asIterable()) {
        nodeID = result.getProperty("nodeId").toString();
        result.setProperty("value",0);
        datastore.put(result);
        break;

    }
}