DeleteItem - Amazon DynamoDB

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

DeleteItem

penting

Bagian ini mengacu pada API versi 2011-12-05, yang sudah usang dan tidak boleh digunakan untuk aplikasi baru.

Untuk dokumentasi tentang API tingkat rendah saat ini, lihat Referensi API Amazon DynamoDB.

Deskripsi

Menghapus satu item dalam tabel dengan kunci primer. Anda dapat melakukan operasi penghapusan bersyarat yang menghapus item jika ada, atau jika item memiliki nilai atribut yang diharapkan.

catatan

Jika Anda menentukan DeleteItem tanpa atribut atau nilai, semua atribut untuk item tersebut akan dihapus.

Kecuali jika Anda menentukan syarat, DeleteItem adalah operasi idempotensi; menjalankannya beberapa kali pada item atau atribut yang sama tidak menghasilkan respons kesalahan.

Penghapusan bersyarat hanya berguna untuk menghapus item dan atribut jika syarat tertentu terpenuhi. Jika syarat terpenuhi, DynamoDB melakukan penghapusan. Jika tidak, item tersebut tidak akan dihapus.

Anda dapat melakukan pemeriksaan bersyarat yang diharapkan pada satu atribut per operasi.

Permintaan

Sintaks

// This header is abbreviated. // For a sample of a complete header, see DynamoDB tingkat rendah API. 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"} }
Nama Deskripsi Wajib
TableName

Nama tabel yang berisi item untuk dihapus.

Jenis: String

Ya
Key

Kunci primer yang menentukan item. Untuk informasi selengkapnya tentang kunci primer, lihat Kunci primer.

Jenis: Peta HashKeyElement ke nilainya dan RangeKeyElement ke nilainya.

Ya
Expected

Menunjuk atribut untuk penghapusan bersyarat. Parameter Expected memungkinkan Anda untuk memberikan nama atribut, dan apakah DynamoDB harus memeriksa bahwa atribut memiliki nilai tertentu sebelum mengubahnya.

Jenis: Peta nama atribut.

Tidak
Expected:AttributeName

Nama atribut untuk penempatan bersyarat.

Jenis: String

Tidak
Expected:AttributeName: ExpectedAttributeValue Gunakan parameter ini untuk menentukan apakah nilai sudah ada atau belum untuk pasangan nama-nilai atribut.

Notasi JSON berikut menghapus item jika atribut "Warna" tidak ada untuk item tersebut:

"Expected" : {"Color":{"Exists":false}}

Notasi JSON berikut memeriksa untuk melihat apakah atribut dengan nama "Warna" sudah memiliki nilai "Kuning" sebelum menghapus item tersebut:

"Expected" : {"Color":{"Exists":true},{"Value":{"S":"Yellow"}}}

Secara default, jika Anda menggunakan parameter Expected dan menyediakan Value, DynamoDB mengasumsikan bahwa atribut ada dan memiliki nilai terkini untuk diganti. Jadi Anda tidak perlu menentukan {"Exists":true}, karena hal tersebut sudah tersirat. Anda dapat mempersingkat permintaan untuk:

"Expected" : {"Color":{"Value":{"S":"Yellow"}}}
catatan

Jika Anda menentukan {"Exists":true} tanpa nilai atribut untuk diperiksa, DynamoDB mengembalikan kesalahan.

Tidak
ReturnValues

Gunakan parameter ini jika Anda ingin mendapatkan pasangan nama-nilai atribut sebelum pasangan tersebut dihapus. Nilai parameter yang memungkinkan adalah NONE (default) atau ALL_OLD. Jika ALL_OLD ditentukan, isi item lama akan dikembalikan. Jika parameter ini tidak tersedia atau NONE, tidak ada yang dikembalikan.

Jenis: String

Tidak

Respons

Sintaks

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 }
Nama Deskripsi
Attributes

Jika parameter ReturnValues disediakan sebagai ALL_OLD dalam permintaan, DynamoDB mengembalikan array pasangan nama-nilai atribut (pada dasarnya, item tersebut dihapus). Jika tidak, respons berisi sebuah set kosong.

Jenis: Array pasangan nama-nilai atribut.

ConsumedCapacityUnits

Jumlah unit kapasitas tulis yang digunakan dalam operasi. Nilai ini menunjukkan jumlah yang diterapkan pada throughput yang disediakan. Permintaan hapus pada item yang tidak ada mengonsumsi 1 unit kapasitas tulis. Untuk informasi selengkapnya, lihat Tabel kapasitas yang disediakan.

Jenis: Angka

Kesalahan khusus

Kesalahan Deskripsi
ConditionalCheckFailedException Pemeriksaan bersyarat gagal. Nilai atribut yang diharapkan tidak ditemukan.

Contoh

Permintaan sampel

// This header is abbreviated. // For a sample of a complete header, see DynamoDB tingkat rendah API. 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" }

Respons sampel

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 }