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 memainkan lagu ini, Anda dapat menggunakan UpdateItem operasi berikut untuk meningkatkan Put aran satu.
{
TableName: "Music",
Key: {
"Artist":"No One You Know",
"SongTitle":"Call Me Today"
},
UpdateExpression: "SET Plays = Plays + :incr",
ExpressionAttributeValues: {
":incr": 1
},
ReturnValues: "UPDATED_NEW"
}
Dengan PartiQL, Anda menggunakan operasi ExecuteStatement untuk memodifikasi item pada tabel, menggunakan pernyataan Update PartiQL.
Kunci utama untuk tabel ini terdiri dari Ar tis dan SongTitle. Anda harus menentukan nilai untuk atribut ini.
UPDATE Music
SET RecordLabel ='Global Records'
WHERE Artist='No One You Know' AND SongTitle='Call Me Today'
Anda juga dapat memodifikasi beberapa bidang sekaligus, seperti pada contoh berikut.
UPDATE Music
SET RecordLabel = 'Global Records'
SET AwardsWon = 10
WHERE Artist ='No One You Know' AND SongTitle='Call Me Today'
Update 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 pernyataan Update untuk menginisialisasi atribut baru (Play) untuk melacak berapa kali lagu telah diputar.
UPDATE Music
SET Plays = 0
WHERE Artist='No One You Know' AND SongTitle='Call Me Today'
Setiap kali seseorang memainkan lagu ini, Anda dapat menggunakan Update pernyataan berikut untuk menambah Playing satu kali.
UPDATE Music
SET Plays = Plays + 1
WHERE Artist='No One You Know' AND SongTitle='Call Me Today'