我想从Google数据存储中删除行条目。

我已经编码:

            String[] elements = deletedRow.split(",");
            DatastoreService datastore = DatastoreServiceFactory.getDatastoreService();
            Entity row = new Entity("Row");
            Key rowKey;
            for (String element : elements) {
                row.setProperty("userName", "kapil.kaisare");
                out.print("UserName : " + element);
                row.setProperty("description", element);
                rowKey = row.getKey();
                out.print("\nKey : " + rowKey);
                datastore.delete(rowKey);
            }


deleteRow是来自AJAX javaScript调用的查询参数,并且肯定不是空的。

用户名打印成功。密钥打印时:


键:键0


这让我感到惊讶!即使设置行属性,为什么还有键0!

请提出一些解决方案。

供参考:Queries and IndexesEntities, Properties, and Keys

最佳答案

尝试以下

String[] elements = deletedRow.split(",");
DatastoreService datastore = DatastoreServiceFactory.getDatastoreService();

for (String element : elements) {
    Key key = KeyFactory.createKey("Row", element);
    datastore.delete(key);
}


我假设Row是实体的类型,元素(即用户名?)是键名。

10-08 01:25