- Trigger adalah blok PL/SQL yang disimpan dalam database dan akan diaktivasi ketika Anda melakukan statement-statement SQL (Insert, Update, dan Delete) pada sebuah table.
- Implementasi: mengeset/mengubah nilai kolom suatu table sehingga validasi nilai dari table tersebut akan terjaga
- Trigger tersimpan berdiri sendiri, bukan merupakan bagian dari package
- Trigger tidak mempunyai parameter
- Dipanggil pada saat DML, database startup/shutdown, dan pada operasi DDL tertentu
Jenis-jenis Trigger
DML Triggers
- Dijalankan sebelum (before) atau setelah (after) INSERT, UPDATE, DELETE
System Triggers
- Dijalankan setelah operasi system, seperti startup, shutdown, dan pembuatan object.
Membuat Trigger
- Oracle telah menyediakan statement CREATE TRIGGER untuk membuat sebuah trigger yang selanjutnya akan diaktivasi berdasarkan event tertentu.
- Secara umum, event trigger terbagi menjadi dua, yaitu BEFORE (sebelum) dan AFTER (sesudah).
Keterangan:
- REPLACE digunakan untuk mengganti isi trigger jika nama trigger yang dibuat sudah ada sebelumnya
- BEFORE digunakan untuk mendeklarasikan bahwa trigger yang dibuat itu akan dieksekusi sebelum sebuah statement SQL dilakukan
- AFTER digunakan untuk mendeklarasikan bahwa trigger yang dibuat itu akan dieksekusi setelah sebuah statement SQL dilakukakan
- Statement yang dimaksud disini adalah statement SQL dalam DML
Contoh
- Membuat trigger dengan nama tr_coba yang dapat menampilkan teks ‘Table mhs telah di-update’ setiap kali selesai (AFTER) melakukan update terhadap table mhs.
No comments:
Post a Comment