【问题标题】:Can we update a fetch a record and update the Primary key attribute in DynamoDB?我们可以更新获取记录并更新 DynamoDB 中的主键属性吗?
【发布时间】:2020-07-14 20:32:06
【问题描述】:

假设我们有一条主键:A1 和 GSI(哈希键:B1 和 RangeKey:C1)的 DynamoDB 记录。

我们在数据库中有以下记录:

A1        B1        C1
--------------------------
value1    value2    value3
value4    value5    value6

现在,我想查询一条主键 A1 值为 value1 的记录,并将相同的 A1 属性更新为 value7

如果我们能做到这一点,对其他分区有什么影响。如果我们这样做,我们会遇到任何问题吗?

这对桌子有影响吗?鉴于我们的经营规模很大。

【问题讨论】:

  • 我没有明白你所说的“我们有以下记录:A1 B1 C1 value1 value2 value3 value4 value5 value6”的意思。 “A1 B1 C1”是键还是值?
  • @jellycsc 我已经更新了问题
  • 谢谢,再澄清一下,你问对桌子有什么影响?
  • 如果我们能做到这一点,对其他分区有什么影响。如果我们这样做,我们会遇到任何问题吗?
  • 当然不是,我个人认为没有任何理由或重大影响您为什么不能这样做。

标签: amazon-web-services amazon-dynamodb dynamodb-queries amazon-dynamodb-index


【解决方案1】:

你不能这样做。

您不能使用 UpdateItem 更新任何主键属性。 相反,您需要删除该项目,然后使用 PutItem 创建具有新属性的新项目。

发件人:Amazon DynamoDB API Reference AttributeValueUpdate

通过创建新项目,显然不会有悲剧性的影响。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-04-02
    • 1970-01-01
    • 1970-01-01
    • 2022-01-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-04-16
    相关资源
    最近更新 更多