Penjelasan sederhana
UPDATE mengubah isi baris yang sudah ada. SET menentukan kolom apa diganti menjadi nilai apa, dan WHERE menentukan baris mana yang diubah.
Ini perintah yang perlu dijalankan dengan hati-hati. Kalau WHERE lupa ditulis, semua baris di tabel ikut berubah, dan tidak ada tombol Undo seperti di Excel.
Sintaks
UPDATE nama_tabel
SET kolom1 = nilai1, kolom2 = nilai2
WHERE kondisi;
| Bagian | Keterangan |
|---|---|
SET | Kolom yang diubah dan nilai barunya. |
WHERE | Baris mana yang diubah. Tanpa WHERE, semua baris berubah! |
Tanda [kurung siku] berarti bagian opsional. Kata kunci SQL tidak membedakan huruf besar-kecil, tapi menulisnya dengan huruf besar membuat query lebih mudah dibaca.
Contoh UPDATE
Data contoh: departemen
Tabel departemen
| id | nama_dept | lokasi |
|---|---|---|
| 1 | Keuangan | Jakarta |
| 2 | Marketing | Jakarta |
| 3 | IT | Bandung |
| 4 | Legal | Surabaya |
UPDATE departemen
SET lokasi = 'Bandung'
WHERE nama_dept = 'Legal';
Isi tabel setelah dijalankan (SELECT * FROM departemen;)
| id | nama_dept | lokasi |
|---|---|---|
| 1 | Keuangan | Jakarta |
| 2 | Marketing | Jakarta |
| 3 | IT | Bandung |
| 4 | Legal | Bandung |
Hanya baris Legal yang berubah lokasinya.
Cara kerjanya, langkah demi langkah
UPDATE departemen: tabel yang akan diubah adalah departemen.WHERE nama_dept = 'Legal': hanya baris Legal yang dipilih.SET lokasi = 'Bandung': lokasinya diganti dari Surabaya menjadi Bandung.- Tiga baris lainnya tidak berubah.
Dipakai untuk apa di kantor?
- Mengubah status pesanan menjadi "dikirim".
- Memperbarui harga produk.
- Memperbaiki data yang salah ketik.
Kesalahan yang sering terjadi
- Lupa
WHERE, sehingga semua baris berubah. Biasakan menjalankanSELECTdenganWHEREyang sama lebih dulu untuk melihat baris mana yang akan kena. - Memakai syarat
WHEREyang terlalu luas, misalnya berdasarkan nama yang ternyata dipakai lebih dari satu orang. Lebih aman memakai id.
DELETE