TRIGGER
OUTLINE
Definisi
After Trigger
Instead Trigger
DEFINISI
Trigger adalah blok T-SQL yang disimpan dalam database dan akan diaktivasi ketika kita melakukan
statement-statement SQL baik DELETE, UPDATE atau INSERT pada sebuah tabel.
Aktivasi trigger didasarkan pada event yang terjadi di dalam tabel tersebut sehingga trigger dapat
membantu menjaga integritas dan konsistensi data.
Contoh implementasi trigger adalah untuk mengeset/mengubah nilai kolom dalam suatu tabel
sehingga validasi nilai dari tabel tersebut akan terjaga. Adanya trigger di dalam database akan
meringankan kita dalam pembuatan aplikasi karena di dalam aplikasi yang kita buat tidak perlu lagi
untuk melakukan validasi data.
Jenis
1. DDL Trigger
2. DML Trigger
3. LOGON Trigger
TRIGGER DALAM BASIS DATA
KOMPONEN TRIGGER
Trigger timing adalah waktu kapan trigger diaktifkan. Ada dua macam trigger timing, yaitu:
1. AFTER : trigger dijalankan setelah DML event pada tabel
2. INSTEAD OF : trigger dijalankan dengan cara melewatkan DML event pada tabel
Trigger Event ada tiga kemungkinan: INSERT, UPDATE atau DELETE
Pada saat trigger event UPDATE, kita dapat memasukkan daftar kolom untuk mengidentifikasi
kolom mana yang berubah untuk mengaktifkan sebuah trigger. Jika tidak ditentukan, maka
perubahannya akan berlaku untuk semua kolom pada semua baris.
Nama Tabel: nama tabel atau view yang berhubungan dengan trigger
Statement Trigger : mendefinisikan tindakan yang perlu dikerjakan pada saat terjadinya event
yang mengakibatkan sebuah trigger menjadi aktif
EVENT TRIGGER
Dalam SQL server, trigger tidak selalu dijalankan, hal ini bergantung pada pengesetan yang
dilakukan terhadap trigger.
Eksekusi trigger akan dilakukan hanya bila trigger diset ke dalam keadaan aktif (enable) dan
akan diabaikan jika trigger tersebut dalam keadaan non-aktif (disable).
Secara default trigger selalu dalam keadaan aktif.
Nilai
NIM MK Dosen Absen Tugas UTS UAS
1. Buat trigger setelah insert pada tabel mahasiswa. Trigger ini mempunyai fungsi untuk
memasukkan satu data kedalam tabel nilai untuk matakuliah MK-102, dan dosen NN.
2. Buat trigger sebelum delete pada tabel mahasiswa. Trigger ini mempunyai fungsi untuk
melakukan pengecekan apakah ada mahasiswa yang sudah mempunyai nilai.
Jika sudah ada, lakukan penghapusan data nilai terlebih dahulu, lalu lakukan penghapusan
data mahasiswa. Jika belum ada, lakukan penghapusan data mahasiswa