Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Bahasa SQL menyediakan pernyataan UPDATE
untuk memodifikasi data. Amazon DynamoDB menggunakan operasi UpdateItem
untuk menyelesaikan tugas yang serupa.
Memodifikasi data dalam tabel dengan SQL
Dalam SQL, Anda akan menggunakan pernyataan UPDATE
untuk memodifikasi satu baris atau lebih. Klausa SET
menentukan nilai-nilai baru untuk satu kolom atau lebih, dan klausul WHERE
menentukan baris yang dimodifikasi. Berikut adalah contohnya.
UPDATE Music
SET RecordLabel = 'Global Records'
WHERE Artist = 'No One You Know' AND SongTitle = 'Call Me Today';
Jika tidak ada baris yang cocok dengan klausul WHERE
, pernyataan UPDATE
tidak berpengaruh.
Memodifikasi data dalam tabel di DynamoDB
Di DynamoDB, Anda dapat menggunakan DynamoDB API atau PartiQL (bahasa kueri yang kompatibel dengan SQL) untuk modifikasi satu item. Jika Anda ingin memodifikasi beberapa item, Anda harus menggunakan beberapa operasi.
Dengan DynamoDB API, Anda menggunakan operasi UpdateItem
untuk memodifikasi satu item.
{ TableName: "Music", Key: { "Artist":"No One You Know", "SongTitle":"Call Me Today" }, UpdateExpression: "SET RecordLabel = :label", ExpressionAttributeValues: { ":label": "Global Records" } }
Anda harus menentukan atribut Key
item yang akan dimodifikasi dan UpdateExpression
untuk menentukan nilai atribut. UpdateItem
berperilaku seperti operasi “upsert”. Item diperbarui jika ada di tabel, tetapi jika tidak, item baru ditambahkan (disisipkan).
UpdateItem
mendukung tulis bersyarat, di mana operasi hanya berhasil jika ConditionExpression
tertentu bernilai true. Misalnya, operasi UpdateItem
berikut tidak melakukan pembaruan kecuali jika harga lagu lebih besar dari atau sama dengan 2,00.
{ TableName: "Music", Key: { "Artist":"No One You Know", "SongTitle":"Call Me Today" }, UpdateExpression: "SET RecordLabel = :label", ConditionExpression: "Price >= :p", ExpressionAttributeValues: { ":label": "Global Records", ":p": 2.00 } }
UpdateItem
juga mendukung penghitung atom, atau atribut jenis Number
yang dapat ditambahkan atau dikurangi. Penghitung atom serupa dalam banyak hal dengan generator urutan, kolom identitas, atau bidang penambahan otomatis dalam basis data SQL.
Berikut ini adalah contoh operasi UpdateItem
untuk menginisialisasi atribut baru (Play) untuk melacak berapa kali lagu telah diputar.
{ TableName: "Music", Key: { "Artist":"No One You Know", "SongTitle":"Call Me Today" }, UpdateExpression: "SET Plays = :val", ExpressionAttributeValues: { ":val": 0 }, ReturnValues: "UPDATED_NEW" }
Parameter ReturnValues
diatur ke UPDATED_NEW
, yang mengembalikan nilai-nilai baru dari setiap atribut yang diperbarui. Dalam hal ini, parameter mengembalikan 0 (nol).
Setiap kali seseorang memutar lagu ini, kita dapat menggunakan operasi UpdateItem
berikut untuk menambahkan Play sebanyak satu.
{ TableName: "Music", Key: { "Artist":"No One You Know", "SongTitle":"Call Me Today" }, UpdateExpression: "SET Plays = Plays + :incr", ExpressionAttributeValues: { ":incr": 1 }, ReturnValues: "UPDATED_NEW" }