- Back to Home »
- PENGERTIAN TENTANG TRIGGER
Pertanyaan?
1. Apa itu trigger
2. Kapan trigger akan berjalan
3. Apa perbedaan antara trigger before dan trigger after
4. Apa yang harus di perhatikan dalam menulis trigger
JAWABAN
1. Trigger adalah sebuah perintah khusus dalam database yang akan dijalankan secara otomatis ketika terjadi suatu kejadian (event) tertentu pada tabel.
2. Trigger akan berjalan secara otomatis ketika terjadi operasi tertentu pada tabel, seperti INSERT (menambah data), UPDATE (mengubah data), atau DELETE (menghapus data).
3. BEFORE berarti trigger dijalankan sebelum operasi dilakukan.
Biasanya BEFORE digunakan untuk:
- melakukan validasi,
- memeriksa data,
- mengubah nilai sebelum disimpan.
--AFTER berarti trigger dijalankan setelah operasi berhasil dilakukan.
Biasanya AFTER digunakan untuk:
- mencatat aktivitas,
- memperbarui tabel lain,
- melakukan proses setelah data berhasil disimpan.
4. Dalam menulis trigger, perlu memperhatikan event yang digunakan (INSERT, UPDATE, atau DELETE), waktu eksekusi (BEFORE atau AFTER), tabel yang digunakan, serta perintah yang akan dijalankan secara otomatis.
Pengertian Trigger
Trigger adalah fitur pada database yang berfungsi untuk menjalankan perintah SQL secara otomatis ketika terjadi suatu kejadian pada tabel, seperti data ditambahkan, diubah, atau dihapus.
Artinya, kita tidak perlu menjalankan perintah tersebut secara manual karena database akan mengeksekusinya sendiri.
Cara kerja Trigger
Trigger bekerja berdasarkan tiga jenis kejadian utama:
INSERT → saat data baru ditambahkan.
UPDATE → saat data diubah.
DELETE → saat data dihapus.
Selain itu, trigger dapat dijalankan:
BEFORE → sebelum kejadian terjadi.
AFTER → setelah kejadian terjadi.
Ilustrasi
Misalnya ada tabel barang dan log_barang.
Ketika barang baru ditambahkan ke tabel
barang, trigger otomatis mencatat aktivitas tersebut ke tabellog_barang.
Alurnya:
Tambah data ke
barang→ Trigger aktif → Data aktivitas masuk kelog_barang.
Jenis-jenis Trigger
Jenis | Fungsi |
|---|---|
BEFORE INSERT | Berjalan sebelum data ditambahkan. |
AFTER INSERT | Berjalan setelah data ditambahkan. |
BEFORE UPDATE | Berjalan sebelum data diubah. |
AFTER UPDATE | Berjalan setelah data diubah. |
BEFORE DELETE | Berjalan sebelum data dihapus. |
AFTER DELETE | Berjalan setelah data dihapus. |
Contoh Trigger
Tabel barang
id_barang | nama_barang | stok |
|---|---|---|
1 | Buku | 20 |
Tabel log_barang
id_log | aktivitas |
|---|
Trigger AFTER INSERT
CREATE TRIGGER tambah_log
AFTER INSERT ON barang
FOR EACH ROW
INSERT INTO log_barang(aktivitas)
VALUES ('Barang baru ditambahkan');Hasil
Jika menjalankan:
INSERT INTO barang (nama_barang, stok)
VALUES ('Pensil', 50);Maka secara otomatis tabel log_barang akan berisi:
id_log | aktivitas |
|---|---|
1 | Barang baru ditambahkan |
Kegunaan Trigger
Mencatat riwayat aktivitas (log).
Memperbarui stok secara otomatis.
Memvalidasi data sebelum disimpan.
Menjaga konsistensi data antar tabel.
Mengurangi pekerjaan yang harus dilakukan secara manual.
Kelebihan dan Kekurangan
Kelebihan | Kekurangan |
|---|---|
Berjalan otomatis. | Sulit dilacak jika trigger terlalu banyak. |
Mengurangi pekerjaan manual. | Bisa memperlambat proses jika logikanya rumit. |
Menjaga konsistensi data. | Perlu pengelolaan yang baik agar tidak membingungkan. |
Akun guardian tales
PENGERTIAN TENTANG TRIGGER
Pertanyaan? 1. Apa itu trigger 2. Kapan trigger akan berjalan 3. Apa perbedaan antara trigger before dan trigger after 4. Apa yang harus di...