AWS DynamDB条件项删除

时间:2016-04-20 07:36:01

标签: c# amazon-web-services amazon-dynamodb aws-sdk

我有一个DynamoDB表,其中一个属性作为主键ItemName

添加到表中的每个属性都使用当前的UTC时间戳命名。

我想在删除最后一个属性时对该项进行条件删除,该属性将检查是否还有ItemName以外的其他属性,如果还有,我想删除项目

有没有这样做?

感谢。

1 个答案:

答案 0 :(得分:2)

据我所知,没有办法告诉DynamoDB自动为您执行此操作。如果您使用UpdateItem方法将属性添加到尚不存在的项目中,他们将为您创建一个新项目,但他们不会在所有属性时自动删除该项目(除了密钥)已被删除。

执行此操作的最佳方法是使用UpdateItem方法的ReturnValues属性。将其设置为ALL_NEW以获取返回给您的行的当前状态。然后,您的代码可以检查项目是否有任何其他属性,并根据需要调用DeleteItem方法。

编辑: 此外,您可以在DeleteItem方法调用中添加ConditionExpression,以便在删除属性之前检查是否存在属性。