2017-01-06 1 views
0

キーIDに基づいてレコードを更新するサンプルコードがありますが、キーを使用するのではなく他の列に基づいてDS値を更新するサンプルスクリプトが必要ですクエリを使用していますが、解決策が見つかりませんでした。キーIDを使わずにデータストアを更新しました

boolean markDone(long id) { 
    Transaction transaction = datastore.newTransaction(); 
    try { 
     Entity task = transaction.get(keyFactory.newKey(id)); 
     if (task != null) { 
     transaction.put(Entity.newBuilder(task).set("done", true).build()); 
     } 
     transaction.commit(); 
     return task != null; 
    } finally { 
     if (transaction.isActive()) { 
     transaction.rollback(); 
     } 
    } 

答えて

0

This pageには多数のクエリ例があります。

クエリをトランザクションの一部にする場合は、祖先クエリである必要があります。

+0

ありがとうございました!エド・デイヴィソン – Jon

関連する問題