小编Jos*_*ose的帖子

如何更新String Set(SS)类型的Dynamodb中的项目?

我创建了一个String Set类型的属性.当我创建创建项目并分配类型SS的属性时,一切正常.但是当我尝试更新此属性时,数据类型将更改为列表("L").

我试试这个:

qw = new AWS.DynamoDB.DocumentClient();

var params = {
  TableName : "myTable",
  Key: {
    "id": somekey
  },
  UpdateExpression: "set ssvar= :arrp",
  ExpressionAttributeValues: {
     ":arrp": [ "test", "test2" ]
  }
};

qw.update (etc.)
Run Code Online (Sandbox Code Playgroud)

这会导致dynamodb中数据类型的更改,而不是字符串集我得到一个列表:

"ssvar": {
            "L": [
                {
                    "S": "test"
                }, 
                {
                    "S": "test2"
                }
            ]
        }
Run Code Online (Sandbox Code Playgroud)

我尝试了各种类似的解决方案,但总是我的数据类型发生了变化.

  ExpressionAttributeValues: {
     ":arrp": 
        "SS": [ "test", "test2" ]
  }
Run Code Online (Sandbox Code Playgroud)

如何更新字符串集类型的属性?

amazon-web-services node.js amazon-dynamodb

8
推荐指数
2
解决办法
5401
查看次数