从 dynamodb 删除项目之前如何检查是否存在重复项?

问题描述 投票:0回答:1

我有一个 dynamo 数据库,其主键由 id 和排序键组成。我想删除一堆记录(仍然需要弄清楚如何批量执行),这是一个起点 - 下面的示例代码。

理论上表中不应该有任何重复项,但是有没有办法在删除之前检查dynamodb中是否有重复项?或者在删除项目之前获取计数的查询?

import boto3

dynamodb = boto3.resource('dynamodb')

table = dynamodb.Table('sometable')

response = table.delete_item(
        Key={
            'id': 'abcd',
            'sortKey': 'efgh'
        }
    )
    
    status_code = response['ResponseMetadata']['HTTPStatusCode']
python-3.x amazon-dynamodb boto3
1个回答
0
投票

来自文档

创建表时,除了表名之外,还必须指定表的主键。主键唯一标识表中的每个项目,因此任何两个项目都不能具有相同的键。

这一事实对于 DynamoDB 中的任何内容都是非常重要的,因此您可以放心,DynamoDB 表中不存在具有相同主键值的重复记录。

© www.soinside.com 2019 - 2024. All rights reserved.