Tipe trigger :
- Application trigger : diaktifkan pada saat terjadi event yang berhubungan dengan sebuah aplikasi
- Database trigger : diaktifkan pada saat terjadi event yang berhubungan dengan data (seperti operasi DML) atau event yang berhubungan dengan sistem (semisal logon atau shutdown) yang terjadi pada sebuah skema atau database
Trigger timing adalah waktu kapan
trigger diaktifkan. Ada tiga macam trigger timing, yaitu :
- BEFORE : trigger dijalankan sebelum DML event pada table
- AFTER : trigger dijalankan setelah DML event pada table
- INSTEAD OF : trigger dijalankan pada sebuah view.
Terdapat tiga kejadian (event) umum yang dapat menyebabkan trigger dipicu :
- INSERT, berarti trigger dijalankan ketika terdapat sejumlah data baru yang diinput
- UPDATE, berarti trigger dijalankan ketika terdapat data / record yang diubah
- DELETE, berarti trigger dijalankan ketika terdapat data / record yang dihapus
Manfaat dari penggunaan trigger :
- Trigger merupakan salah satu mekanisme untuk menjalankan aturan bisnis dan menjaga integritas data dalam sebuah basis data. Mekanisme yang lainnya adalah penggunaan CONSTRAINT
- Trigger dapat mengevaluasi status dari sebuah tabel sebelum dan sesudah terjadi perubahan data dan melakukan aksinya sesuai perbedaan yang terjadi
- Trigger dapat melakukan perubahan cascade melalui melalui relasi tabel pada database, akan tetapi perubahan ini akan lebih efisien jika dieksekusi menggunakan referential integrity constraints.
- Trigger dapat melakukan pencegahan akses atas data yang kompleks dibanding dengan menggunakan CHECK CONSTRAINT
- Tidak seperti pada Check Constraint, Trigger dapat mereferensikan kolom / field dalam tabel yang berbeda.
Contoh membuat trigger :
ON {Nama_Table}
FOR {DELETE | INSERT | UPDATE}
AS
{SQL Statement}
Syntax menghapus Trigger :
DROP TRIGGER {Nama_Trigger}
ALTER TRIGGER {Nama_Trigger}
ON [Nama_Table}
FOR {DELETE | INSERT | UPDATE}
AS
{SQL Statement}


0 komentar:
Posting Komentar