gpt4 book ai didi

node.js - 如何更新字符串集 (SS) 类型的 Dynamodb 中的项目?

转载 作者:搜寻专家 更新时间:2023-10-31 22:18:13 26 4
gpt4 key购买 nike

我创建了一个字符串集类型的属性。当我创建 Item 并分配一个 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.)

这导致 dynamodb 中的数据类型发生变化,我得到一个列表而不是字符串集:

"ssvar": {
"L": [
{
"S": "test"
},
{
"S": "test2"
}
]
}

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

  ExpressionAttributeValues: {
":arrp":
"SS": [ "test", "test2" ]
}

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

最佳答案

截至 2015 年 9 月,有一个 createSet您可以为此使用的 DocumentClient 中的函数。

更新 - 添加示例

我已经修改了您的示例代码以使用此功能:

qw = new AWS.DynamoDB.DocumentClient();

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

qw.update (etc.)

关于node.js - 如何更新字符串集 (SS) 类型的 Dynamodb 中的项目?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37194794/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com