[英]DynamoDB update inside an array of objects (nodejs)
我注意到DynamoDB可以在數組中添加和刪除項目,但是如果要具體更新該對象,如何在對象中搜索特定項目? 例如:在MongoDB中,您可以搜索someitem。$。subitem並更新該特定項目。 有沒有辦法使用DynamoDB做到這一點?
Item: {
someitem: [
{
subitem: "id",
somevalue: "something"
}
]
}
我會說這是基本功能,但似乎不容易找到(甚至不受支持)
AWS不允許在單個更新請求中對其進行修改,請在以下答案中找到更多信息:update -a-json-array-in-aws-dynamodb 。
他們提出的解決方案是將架構從數組更改為{} ,或者實現自定義函數並遍歷每個數組並找到要更新的新id,這樣可以說以編程方式更新json,然后插入整個對象。
TableName : 'tablename',
Key : { id: id},
ReturnValues : 'ALL_NEW',
UpdateExpression : 'set someitem['+`index`+'].somevalue = :reply_content',
ExpressionAttributeValues : { ':reply_content' : updateddata }
通過數組索引編輯數組元素
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.