我正在使用使用 gsi 的 dynamo db 表,因此我可以通过附加属性进行查询(如果存在)。此属性将在流程中更新,因此所有项目在流程开始时都没有此属性。此属性在添加到项目时设置为 gsi 的主键。
除了指定 gsi 的主键我无法插入新项目之外,一切都按预期工作。如果尚未设置其主键,我希望 gsi 忽略该项目。在指定投影属性时,我认为使用 INCLUDE 选项可以做到这一点。显然我在这里弄错了,但我也不知道如何解决这个问题。
非常感谢任何帮助,而且我将不得不坚持使用 dynamo db,所以包括这个 db 在内的每一个提示都会有很大帮助!
编辑: 为了澄清 - 这些是我的属性:
- id(主键:必填)
- 名称(属性)
- 年份(属性)
- gsi_id(GSI 主键:可选)
我想添加一个带有以下字段的项目:
- id(主键:必填)
- 名称(属性)
- 年份(属性)
然后添加 gsi_id 字段。