Pertanyaan
Apa yang terjadi jika ada konflik antara trigger BEFORE dan trigger AFTER yang terpasang pada tabel yang sama untuk operasi yang sama? A Hanya trigger AFTER yang akan dijalankan e Hanya trigger BEFORE yang akan dijalankan B Trigger AFTER akan dijalankan terlebih dahulu, diikuti oleh trigger BEFORE B Trigger BEFORE akan dijalankan terlebih dahulu diikuti oleh trigger AFTER D Trigger BEFORE dan AFTER akan dijalankan secara bersamaan
Solusi
Jawaban
Jawaban yang benar adalah **B. Trigger BEFORE akan dijalankan terlebih dahulu diikuti oleh trigger AFTER.**Berikut penjelasannya:* **Trigger BEFORE** dijalankan sebelum operasi yang memicunya (misalnya, INSERT, UPDATE, DELETE) dilakukan pada tabel.* **Trigger AFTER** dijalankan setelah operasi yang memicunya selesai dilakukan.Oleh karena itu, urutan eksekusi trigger adalah:1. **Trigger BEFORE**2. **Operasi tabel (INSERT, UPDATE, DELETE)**3. **Trigger AFTER****Contoh:**Misalnya, Anda memiliki trigger BEFORE yang memeriksa apakah nilai yang akan dimasukkan ke dalam tabel valid, dan trigger AFTER yang mencatat perubahan data ke dalam tabel audit.Ketika Anda mencoba memasukkan data baru ke dalam tabel, trigger BEFORE akan dijalankan terlebih dahulu untuk memvalidasi data. Jika data valid, operasi INSERT akan dilakukan. Setelah operasi INSERT selesai, trigger AFTER akan dijalankan untuk mencatat perubahan data ke dalam tabel audit.**Penting untuk dicatat:*** Jika trigger BEFORE gagal (misalnya, karena data tidak valid), operasi tabel tidak akan dilakukan, dan trigger AFTER tidak akan dijalankan.* Jika trigger AFTER gagal, operasi tabel sudah selesai, dan tidak akan diulang.Semoga penjelasan ini membantu!