UPDATE: Mengubah Data (dan Bahaya Lupa WHERE)

Mengubah isi data dengan UPDATE ... SET ... WHERE, mengubah banyak kolom sekaligus, memakai rumus, dan kebiasaan aman sebelum mengubah data.

Part 9 dari 38 Β± 35 menit Gratis

Bentuk dasar UPDATE

UPDATE nama_tabel
SET kolom1 = nilai1, kolom2 = nilai2
WHERE kondisi;

Contoh: harga Americano naik jadi 16.000.

UPDATE produk
SET harga = 16000
WHERE nama = 'Americano';

Peringatan paling penting di bab ini: WHERE menentukan baris mana yang diubah. Kalau lupa menulisnya, SEMUA baris berubah. Bayangkan UPDATE produk SET harga = 16000; membuat setiap produk harganya 16.000 — dari tumbler sampai es teh. Ini salah satu "kecelakaan database" paling klasik di dunia kerja.

Mengubah banyak kolom sekaligus

UPDATE produk
SET harga = 17000, stok = 45
WHERE id = 3;

Memakai rumus: nilai baru berdasarkan nilai lama

UPDATE produk SET stok = stok - 1 WHERE id = 1;           -- stok berkurang 1
UPDATE produk SET harga = harga + 2000 WHERE kategori_id = 1;   -- naik 2000 untuk semua minuman
UPDATE produk SET harga = ROUND(harga * 1.1) WHERE kategori_id = 3;  -- naik 10%

Bagian kanan tanda = dihitung dulu memakai nilai lama, baru disimpan. Itu sebabnya stok = stok - 1 tidak membingungkan MySQL.

Kebiasaan aman sebelum UPDATE

  1. Tulis SELECT dulu dengan WHERE yang sama untuk melihat baris mana yang akan kena:
    SELECT * FROM produk WHERE kategori_id = 1;
  2. Kalau hasilnya sudah benar, ganti SELECT * menjadi UPDATE ... SET ... dengan WHERE yang sama persis.
  3. Untuk perubahan penting, bungkus dalam transaksi (dipelajari nanti) agar bisa di-ROLLBACK.
  4. Lihat pesan hasilnya: Rows matched: 4 Changed: 4. Jika angkanya tidak sesuai dugaanmu, curiga ada yang salah.

Mode aman klien MySQL: opsi mysql --safe-updates (atau --i-am-a-dummy πŸ˜„) menolak UPDATE/DELETE tanpa WHERE yang memakai kunci. Cocok untuk pemula dan untuk akun yang dipakai harian.

Praktikkan langsung, gratis

Tulis dan jalankan kode langsung di browser, dapatkan penilaian otomatis. Daftar gratis kapan saja untuk menyimpan progres dan meraih sertifikat.

Coba latihan sekarang, tanpa daftar
Bagikan: WhatsApp Facebook LinkedIn X