Importante
Esta seção refere-se à versão de API 2011-12-05, que está obsoleta e não deve ser usada para novos aplicativos.
Para obter a documentação da API de baixo nível atual, consulte a Referência da API do Amazon DynamoDB.
Descrição
Exclui um item único em uma tabela por meio de uma chave primária Você pode executar uma operação de exclusão condicional que exclui o item, se ele existir, ou se ele tiver um valor de atributo esperado.
nota
Se você especificar DeleteItem
sem atributos ou valores, todos os atributos do item serão excluídos.
A não ser que você especifique as condições, DeleteItem
é uma operação idempotente; executá-la várias vezes no mesmo item ou atributo não resultará em uma resposta de erro.
As exclusões condicionais são úteis para excluir somente itens e atributos se condições específicas forem atendidas. Se as condições forem atendidas, o DynamoDB executará a exclusão. Caso contrário, o item não é excluído.
Você pode executar a verificação condicional esperada em um atributo por operação.
Solicitações
Sintaxe
// This header is abbreviated. // For a sample of a complete header, see API de baixo nível do DynamoDB. POST / HTTP/1.1 x-amz-target: DynamoDB_20111205.DeleteItem content-type: application/x-amz-json-1.0 {"TableName":"Table1", "Key": {"HashKeyElement":{"S":"AttributeValue1"},"RangeKeyElement":{"N":"AttributeValue2"}}, "Expected":{"AttributeName3":{"Value":{"S":"AttributeValue3"}}}, "ReturnValues":"ALL_OLD"} }
Nome | Descrição | Obrigatório |
---|---|---|
TableName
|
O nome da tabela que contém o item a ser excluído. Tipo: string |
Sim |
Key
|
A chave primária que define o item. Para obter mais informações sobre chaves primárias, consulte Chave primária. Tipo: mapa de |
Sim |
Expected
|
Designa um atributo para uma exclusão condicional. O parâmetro Tipo: mapa de nomes de atributo. |
Não |
Expected:AttributeName
|
O nome do atributo da operação put condicional. Tipo: string |
Não |
Expected:AttributeName: ExpectedAttributeValue |
Use esse parâmetro para especificar se o valor já existe ou não para o par de nome-valor do atributo. A notação JSON a seguir exclui o item se o atributo "Cor" não existir para esse item:
A notação JSON a seguir verifica se o atributo com o nome "Cor" tem um valor existente "Amarelo" antes de excluir o item:
Por padrão, se você usar o parâmetro
notaSe você especificar |
Não |
ReturnValues
|
Use este parâmetro se você deseja obter os pares de nome-valor de atributo antes que eles sejam excluídos. Os possíveis valores de parâmetro são Tipo: string |
Não |
Respostas
Sintaxe
HTTP/1.1 200 OK
x-amzn-RequestId: CSOC7TJPLR0OOKIRLGOHVAICUFVV4KQNSO5AEMVJF66Q9ASUAAJG
content-type: application/x-amz-json-1.0
content-length: 353
Date: Tue, 12 Jul 2011 21:31:03 GMT
{"Attributes":
{"AttributeName3":{"SS":["AttributeValue3","AttributeValue4","AttributeValue5"]},
"AttributeName2":{"S":"AttributeValue2"},
"AttributeName1":{"N":"AttributeValue1"}
},
"ConsumedCapacityUnits":1
}
Nome | Descrição |
---|---|
Attributes
|
Se o parâmetro Tipo: matriz de pares de nome-valor de atributo. |
ConsumedCapacityUnits |
O número de unidades de capacidade de gravação consumidas pela operação. Esse valor mostra o número utilizado no throughput provisionado. As solicitações de exclusão em itens não existentes consomem 1 unidade de capacidade de gravação. Para ter mais informações, consulte Modo de capacidade provisionada do DynamoDB. Tipo: número |
Erros especiais
Erro | Descrição |
---|---|
ConditionalCheckFailedException
|
Falha na verificação condicional. Um valor de atributo esperado não foi encontrado. |
Exemplos
Exemplo de solicitação
// This header is abbreviated. // For a sample of a complete header, see API de baixo nível do DynamoDB. POST / HTTP/1.1 x-amz-target: DynamoDB_20111205.DeleteItem content-type: application/x-amz-json-1.0 {"TableName":"comp-table", "Key": {"HashKeyElement":{"S":"Mingus"},"RangeKeyElement":{"N":"200"}}, "Expected": {"status":{"Value":{"S":"shopping"}}}, "ReturnValues":"ALL_OLD" }
Exemplo de resposta
HTTP/1.1 200 OK
x-amzn-RequestId: U9809LI6BBFJA5N2R0TB0P017JVV4KQNSO5AEMVJF66Q9ASUAAJG
content-type: application/x-amz-json-1.0
content-length: 353
Date: Tue, 12 Jul 2011 22:31:23 GMT
{"Attributes":
{"friends":{"SS":["Dooley","Ben","Daisy"]},
"status":{"S":"shopping"},
"time":{"N":"200"},
"user":{"S":"Mingus"}
},
"ConsumedCapacityUnits":1
}