DynamodDB:如何更新排序键?

该表有两个键:(filename分区键)和eventTime(排序键)。我想更新eventTime某些filename。尝试put_item()update_item()发送同样的filename新的eventTime,但这些功能添加一个新的项目,而不是更新的。

我应该为此目的使用什么?


小怪兽爱吃肉
浏览 251回答 3
3回答

米脂

你不能。由于它是索引的一部分,因此该字段受到保护。您应该如何删除该项目并使用新的排序键再次添加它。请参阅https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_AttributeValueUpdate.html

繁星淼淼

根据DynamoDB/AttributeValueUpdateaws 文档:您不能用于UpdateItem更新任何主键属性。相反,您需要删除该项目,然后使用它PutItem来创建具有新属性的新项目。

婷婷同学_

在 DynamoDB 中,您可以对现有项目执行有条件的更新(如果不存在则插入新的属性名称-值对,或者如果具有某些预期属性值则替换现有名称-值对)。请参阅此处的官方文档:https : //docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_UpdateItem.html此外,您可以考虑以正确的方式使用排序键。请参阅此处的建议文档:https : //docs.aws.amazon.com/amazondynamodb/latest/developerguide/bp-sort-keys.html
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python