根据条件更新动态项目



当新项目的日期比现有项目更新时,我才想更新 DynamoDB 中的项目。目前,我正在查询现有项目,在我的代码中进行比较,然后写入数据库。我想知道是否有办法让 DynamoDB 在单个查询中进行检查和更新。我使用了条件表达式,但即使条件满足,它也不会更新值。我正在使用nodejs。

我通过使用找到了解决方案

预期

迪纳莫德条款。所以下面是我的代码。

var params;
  params = {
    Key: {
      "HashKey": {
        S: "Value"
      }
    },
    TableName: 'TableName',
    AttributeUpdates: {
      "Attr1": {
        Value: {
          S: "Value1"
        }
      }
    },
    Expected: {
      "Attr2": {
          "ComparisonOperator": "EQ",
          "AttributeValueList": [ {S: "Value2"} ]
      }
    }
  };
  dynamodb_client.updateItem(params, function(err, data) {
  if (err){
    console.log(err);
  } else {
    console.log(data);
  }
});

所以上面的代码将 Attr1 的值更新为值 1 如果 Attr2 等于值 2

最新更新