fab*_*ian 57 amazon-dynamodb boto3
我正在尝试update_item在boto3中使用DynamoDB 的功能.
我现在正在努力更新物品清单.如果列表尚不存在,我想创建一个新列表,否则将附加到现有列表.
如果列表尚不存在,则使用UpdateExpression表单的a SET my_list = list_append(my_list, :my_value)返回错误"提供的表达式引用项目中不存在的属性".
知道我怎么修改我的UpdateExpression?
谢谢和最好的问候,Fabian
Bor*_*rov 111
你可以使用list_append(if_not_exists())建筑.
UpdateExpression:
'SET my_list2 = list_append(if_not_exists(my_list2, :empty_list), :my_value)'
Run Code Online (Sandbox Code Playgroud)
ExpressionAttributeValues:
{ ":my_value":[{"S":"test"}], ":empty_list":[] }
Run Code Online (Sandbox Code Playgroud)
Boris 解决方案的替代方案可能是使用set而不是 list 数据类型并使用 ADD 关键字,它完全符合您的要求。
使用 Add,更新表达式变为: ADD setName :s
表达式属性值可以是这样的: {":s": {"SS":["First", "Second"]}}
| 归档时间: |
|
| 查看次数: |
12784 次 |
| 最近记录: |