当前位置: 首页 > 知识库问答 >
问题:

如何一次更新DynamoDB表中的多个项

娄利
2023-03-14

我正在使用DynamoDB,我需要更新多条记录上的特定属性。用伪语言编写我的需求时,我希望执行这样一个更新:“update table persons set relationshipStatus='where personKey in(key1,key2,key3,...)”(假设personKey是DynamoDB表中的键)。

换句话说,我想用一个In子句进行更新,或者我想可以称之为批处理更新。我发现了这个链接,它明确询问像批处理更新这样的操作是否存在,答案是它不存在。但是,它没有提到内子句。文档显示ConditionalExpressions中支持in子句(一次可以提供100个值)。但是,我不确定这样的IN子句是否适合我的情况,因为我仍然需要提供一个强制性的KEY属性(它似乎期望一个值--我可能错了),而且我担心它会对每次更新进行全表扫描。

共有1个答案

归松
2023-03-14

正如您所指出的,DynamoDB不支持批处理更新操作。您需要查询并获取所有要更新的记录的关键字。然后遍历该列表,一次更新一个项目。

 类似资料:
  • 问题内容: 我需要在一个请求中进行多次更新。 在我有: 因此需要进行更改。 这是我的序列化器代码: 我试图添加: 和 但这不起作用。如何更改此代码以进行多次更新。我的json请求 问题答案: 这是您请求的CreateMixins或UpdateMixins的示例。 ======================查看========================== ====== ==========

  • 问题内容: 我有两个表需要相同的值以实现非规范化。 这是查询。 第一张桌子 第二张桌子 如您所见,两个表之间的唯一区别是它们的名称和两个表没有该字段 无论如何将两个更新合并为一个? 问题答案: 如文档中所述,应该可以进行多表更新。 http://dev.mysql.com/doc/refman/5.5/en/update.html 注意:多表不支持LIMIT,因此根据具体情况,这可能会引起更多麻烦

  • 这看起来应该很简单,但我没有找到任何例子或留档。我有一个看起来像这样的Dynamodb表: 记录1:{姓名、电子邮件、项目[{product}、{item2}、{item3]} 记录2:(姓名、电子邮件、项目[{product}、{item2}、{item3]} 我需要能够更新items元素,即更新记录1中的item1对象。我可以通过硬编码list数组元素使用以下代码来实现这一点,但我不知道如何将

  • 我试图更新DynamoDB表中的项目。我写的代码正在更新项目,但是当我添加一个标题为“源代码/目标”的列时,它会给出一个“验证异常”异常。 用于更新的代码- 我得到的错误是- 调用UpdateItem操作时发生错误(ValidationException):无效的UpdateExpression:语法错误;标记:\“/\”,靠近:\“源/目标” 这个怎么解决?

  • 本文向大家介绍MongoDB中一次查询更新多个文档,包括了MongoDB中一次查询更新多个文档的使用技巧和注意事项,需要的朋友参考一下 要通过单个查询更新许多文档,请在MongoDB中使用 bulkWrite()。让我们创建一个包含文档的集合- 在find()方法的帮助下显示集合中的所有文档- 这将产生以下输出- 以下是使用MongoDB中的一个查询来更新许多文档的查询- 在find()方法的帮助

  • 问题内容: 我已经阅读了很多有关如何更新多列的文章,但仍然找不到正确的答案。 我有一张桌子,我想从另一张桌子更新这张桌子。 如果我只运行select语句(在方括号之间),则脚本返回值,但无法使用update 问题答案: TSQL不支持行值构造函数。改用这个: