TRIGGER
Trigger adalah sebuah fitur di dalam database (seperti MySQL, PostgreSQL, Oracle, SQL Server) yang memungkinkan kita menjalankan perintah SQL secara otomatis ketika terjadi suatu aksi pada tabel.
1. Pengertian
Trigger bisa dianggap sebagai “pemicu otomatis” yang akan dieksekusi ketika ada peristiwa tertentu, misalnya INSERT, UPDATE, atau DELETE di sebuah tabel.
2. Fungsi Utama Trigger
-
Menjaga konsistensi data – misalnya jika data di satu tabel berubah, tabel lain ikut diperbarui otomatis.
-
Mencegah kesalahan – bisa dipakai untuk validasi sebelum data masuk.
-
Membuat log aktivitas – setiap kali ada perubahan data, trigger bisa menyimpan catatan ke tabel log.
-
Otomatisasi – mengurangi pekerjaan manual yang berulang.
3. Jenis Trigger
-
BEFORE Trigger → dijalankan sebelum perintah utama (INSERT/UPDATE/DELETE). Biasanya untuk validasi.
-
AFTER Trigger → dijalankan setelah perintah utama selesai. Biasanya untuk logging atau update tabel lain.
-
INSTEAD OF Trigger (khusus di beberapa DBMS, misalnya SQL Server) → menggantikan perintah yang dijalankan, sering dipakai pada view.
4. Contoh Trigger di MySQL
Misalnya, kita ingin setiap kali ada data INSERT ke tabel pegawai
, otomatis tercatat di tabel log_pegawai
: