Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/amazon-web-services/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Amazon web services 从DynamoDB中查找一行,不带哈希和范围键,并将其删除_Amazon Web Services_Aws Lambda_Amazon Dynamodb_Boto3 - Fatal编程技术网

Amazon web services 从DynamoDB中查找一行,不带哈希和范围键,并将其删除

Amazon web services 从DynamoDB中查找一行,不带哈希和范围键,并将其删除,amazon-web-services,aws-lambda,amazon-dynamodb,boto3,Amazon Web Services,Aws Lambda,Amazon Dynamodb,Boto3,有没有一种方法可以在不使用散列键和范围键的情况下从DynamoDB中删除记录/行 这是我的桌子,看起来像: 我有一个instance_id的值,基于该值,我将删除该行,但会出现错误: 以下是我正在使用的代码: table.delete_item( Key={ 'instance_id':'i-0b2b314a' } ) 报告说: 按主键删除表

有没有一种方法可以在不使用散列键和范围键的情况下从DynamoDB中删除记录/行

这是我的桌子,看起来像:

我有一个instance_id的值,基于该值,我将删除该行,但会出现错误:

以下是我正在使用的代码:

            table.delete_item(
                Key={
                    'instance_id':'i-0b2b314a'
                }
            )
报告说:

按主键删除表中的单个项

因此,不可能通过非主键的值进行删除


您需要扫描(就RCU而言很昂贵!)具有该值的行,然后删除返回的项目。

确实如此。此外,如果这是您需要执行的常见操作—您经常需要通过“instance_id”属性删除项目,那么您还可以为此属性创建一个二级索引。这将允许您在给定实例id的情况下高效地查找哈希键。