2016-09-08 14 views
0

私はDynamoDBのテーブル内の項目を更新しようとしています:DynamoDBの更新項目マルチアクション

var params = { 
     TableName: 'User', 
    Key: { 
     id: 'b6cc8100-74e4-11e6-8e52-bbcb90cbdd26', 
    }, 
    UpdateExpression: 'ADD past_visits :inc, past_chats :inc', 
    ExpressionAttributeValues: { 
     ':inc': 1 
    }, 
     ReturnValues: 'ALL_NEW' 
    }; 
    docClient.update(params, function(err, data) { 
     if (err) ppJson(err); // an error occurred 
     else ppJson(data); // successful response 
    });   

それが働いています。このような:(価値」reset_time =):

var params = { 
     TableName: 'User', 
    Key: { 
     id: 'b6cc8100-74e4-11e6-8e52-bbcb90cbdd26', 
    }, 
    UpdateExpression: 'ADD past_visits :inc, past_chats :inc, SET reset_time = :value', 
    ExpressionAttributeValues: { 
     ':inc': 1, 
     ':value': 0 
    }, 
     ReturnValues: 'ALL_NEW' 
    }; 
    docClient.update(params, function(err, data) { 
     if (err) ppJson(err); // an error occurred 
     else ppJson(data); // successful response 
    }); 

は1つのクエリでサポートマルチアクションをDynamoDBのことができますが、私はいくつかのより多くの値を設定したいですか?

+0

有用であれば回答を受け入れるように要求することができますか?ありがとう! – notionquest

答えて

7

下記のように更新式を変更してください。それは動作するはずです。

2番目の ":inc"とSETの間にコンマはありません。

UpdateExpression : "ADD past_visits :inc, past_chats :inc SET reset_time = :value", 
+0

遅く応答して申し訳ありません、それは動作しています:) –

関連する問題