Trigger adalah blok PL/SQL atau prosedur yang berhubungan dengan table, view, skema atau database yang dijalankan secara implicit pada saat terjadi sebuah event. Trigger merupakan store procedure yang dijalankan secara automatis saat user melakukan modifikasi data pada tabel. Modifikasi data yang dilakukan pada tabel yaitu berupa perintah INSERT, UPDATE, dan DELETE. INSERT , UPDATE dan DELETE bisa digabung jadi satu trigger yang dinamakan Multiple Trigger.
Sintak penulisan dari database trigger, berisi komponen berikut :
1. Trigger timing :
Untuk tabel : BEFORE, AFTER
Untuk view : INSTEAD OF
2. Trigger event : INSERT, UPDATE atau DELETE
3. Nama tabel : yaitu nama tabel atau view yang berhubungan dengan trigger
4. Tipe trigger : Baris atau Pernyataan (statement)
5. klausa WHEN : untuk kondisi pembatasan
6. trigger body : bagian prosedur yang dituliskan pada trigger
2. Sintaks SQL
Membuat trigger :
CREATE
[DEFINER = { user | CURRENT_USER }]
TRIGGER trigger_name trigger_time trigger_event
ON tbl_name FOR EACH ROW trigger_stmt
[DEFINER = { user | CURRENT_USER }]
TRIGGER trigger_name trigger_time trigger_event
ON tbl_name FOR EACH ROW trigger_stmt
trigger_name adalah nama trigger yang akan dibuat.
trigger time adalah kapan trigger di eksekusi. bisa AFTER atau BEFORE
trigger_event adalah kejadian yang mengaktifkan trigger. trigger_event bisa berupa :
trigger time adalah kapan trigger di eksekusi. bisa AFTER atau BEFORE
trigger_event adalah kejadian yang mengaktifkan trigger. trigger_event bisa berupa :
INSERT : trigger aktif ketika ada record baru yang di-insert ke tabel.
UPDATE : trigger aktif ketika record di modify
DELETE : trigger aktif ketika record di hapus dari tabel
triger_stmt adalah prosedur/perintah yang dijalankan ketika trigger aktif. jika kita mempunyai
beberapa perintah, gunakan BEGIN ... END
DROP TRIGGER [nama trigger]
Tidak ada komentar:
Posting Komentar