Cara Membuat Trigger Di Mysql

Hay, (lagi-lagi hehhe) semoga masih semangat ya buat yang lagi berusaha nyari-nyari query sql hehhe. Sekarang tentang trigger, maklum tugas dari kampus tentang trigger menggunakan mysql ada juga hehhe. Langsung aja cekidot caranya yap.

Eh iya kelupaan hehhe, ini penjelasan dulu deh tentang trigger itu apa ya hehhe.

Trigger sama seperti sekumulan perintah Transact-SQL yang secara otomatis dijalankan apabila ada perintah INSERT, DELETE, atau UPDATE yang dijalankan didalam tabel.

Karakteristik Trigger:
– Membuat isi dari kolom yang diambil dari kolom yang lain
– Membuat mekanisme validasi yang mencakup query pada banyak tabel
– Membuat log untuk mendaftarkan penggunaan tabel
– Memodifikasi tabel-tabel lain apabila ada penambahan atau perubahan lain di dalam tabel yang aktif

Batasan Dan Pertimbangan Didalam Menggunakan Trigger :
Trigger dapat menjalankan perintah yang terkandung didalam badannya atau mengaktifkan prosedur dan trigger lain untuk menjalankan tugas tertentu
– Setiap perintah SET bisa ditentukan didalam trigger. Perintah ini akan tetap aktif selama eksekusi
– Kita tidak dapat membuat trigger untuk view. Tetapi apabila view digunakan, trigger dari tabel dasar biasanya akan diaktifkan
– Perintah truncate table tidak bisa dihentikan oleh trigger

Berikut adalah cara membuat database Trigger :
CREATE TRIGGER name
[BEFORE|AFTER] [INSERT|UPDATE|DELETE]
ON tablename
FOR EACH ROW statement

name = adalah nama trigger mengikuti peraturan penamaan variabel dalam MySQL
[BEFORE | AFTER] = untuk menentukan kapan proses secara otomatis akan dieksekusi (sebelum atau sesudah proses).
[INSERT | UPDATE | DELETE] = untuk menentukan proses yang dijadikan trigger (pemicu) untuk menjalankan perintah-perintah di dalam trigger
tablename = adalah nama tabel dimana trigger berada
statement = adalah sekumpulan perintah atau query yang akan secara otomatis dijalankan jika proses yang didefinisikan sebelumnya aktif

Contoh Penggunaan database Trigger:

Pertama siapkan sebuah database dan tabel.
create database latian_trigger_ITProgrammer;
create table ITProgrammer ( kode varchar(10) not null,nama varchar(25) not null, primary key (kode))
create table ITProgrammer2 ( kode varchar(10) not null,nama varchar(25) not null, primary key (kode))
create table trans ( kode varchar(10) not null, kodetrans varchar(10),jumlah double, primary key nkode (kode,kodetrans))

Kemudian buat trigger seperti dibawah ini:

create trigger auto_insert_ITProgrammer2
before insert on ITProgrammer for each row
begin
insert into ITProgrammer2 (kode,nama) values (NEW.kode,NEW.nama);
end$$

create trigger auto_update_ITProgrammer2
before update on ITProgrammer for each row
begin
update ITProgrammer2 set nama=NEW.nama where kode=NEW.kode;
end$$

create trigger auto_delete_ITProgrammer2
before delete on ITProgrammer for each row
begin
delete from ITProgrammer2 where kode=OLD.kode;
delete from trans where kode=OLD.kode;

untuk trigger tersebut apabila terjadi perubahan pada tabel ITProgrammer maka akan secara otomatis tabel ITProgrammer2 akan terpengaruh(ikut berubah).

Sumber :
http://blog.creanivate.com/2012/12/cara-membuat-trigger-di-mysql-database.html 22/12/2013 – 19.21 WIB
– Aulia, Bayu Citra Nur.2011.”Database Administration”

Advertisements

4 thoughts on “Cara Membuat Trigger Di Mysql

  1. Pingback: Studi Kasus Manajemen Basis Data : Buana Finance | Ryuushiro13

Tanya Apa?

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s