【问题标题】:How to create and populate lists in DynamoDB如何在 DynamoDB 中创建和填充列表
【发布时间】:2016-11-12 16:38:04
【问题描述】:

我希望在 DynamoDB 中创建一个列表项。这是我的代码:

var list_update_params = {
      TableName: "table01",
      Key: {
        "MachineID": {
          "S": MachineID
        },
        "Hour": {
          "S": Hour
        }
      },
      UpdateExpression: "set var01_list = list_append(var01_list, :ot)",
      ExpressionAttributeValues: {
        ":ot": {"L": [{"N": var01}]}
      },
      ReturnValues: "NONE"
    };
    dynamodb.updateItem(list_update_params, function(err, data) {
      if (err) console.log(err, err.stack);
      else console.log("Updated List to DynamoDB");
    });

问题是list_append 期望属性var01_list 已经存在,但在第一次插入时我不知道。是否有一种技术可以让我创建一个插入 List 属性(如果不存在)并在以后的调用中附加到它?

【问题讨论】:

    标签: amazon-dynamodb


    【解决方案1】:

    从类似的帖子here得到答案。

    UpdateExpression: "set var01_list= list_append(if_not_exists(var01_list, :empty_list), :h)",
          ExpressionAttributeValues: {
            ":h": {"L": [{"N":var01}]},
            ":empty_list": {"L": []}
          },
    

    关键是使用if_not_existslist_append。不知道在这件事上可以做到这一点

    【讨论】:

      猜你喜欢
      • 2017-11-14
      • 2018-09-28
      • 1970-01-01
      • 1970-01-01
      • 2019-08-16
      • 1970-01-01
      • 2020-08-05
      • 2021-02-09
      • 2014-12-29
      相关资源
      最近更新 更多