Select Language



Followers

IT Programmer. Powered by Blogger.

25 December 2012

Cara Membuat Trigger di MySQL Database

"Om Swastiastu"

Membuat Trigger di MySQL
Sebulan sudah tidak pernah berbagi. Hari ini saya luangkan sedikit waktu untuk share Cara membuat Trigger di MySQL. Sebelumnya ada baiknya kalian tahu apa Trigger itu.
Trigger adalah prosedur tersimpan pada Microsoft SQL Server yang secara otomatis dijalankan apabila data di dalam tabel berubah karena eksekusi perintah SQL (INSERT, UPDATE atau DELETE).
Beberapa hal yang dapat dilakukan dengan Trigger adalah
  • Mengupdate tabel-tabel lain jika ada perubahan (Insert, update atau delete) pada tabel yang sedang aktif.
  • Untuk mengimplementasikan suatu sistem log. Setiap terjadi perubahan, secara otomatis akan menyimpan ke tabel log.
  • untuk melakukan validasi dan verifikasi data sebelum data tersebut disimpan. 
Berikut adalah cara membuat Trigger database:
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 triggers.
  • 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). atau dengan cara lain yang lebih mudah kalian bisa menggunakan sintak JOIN seperti pada artikel "Update Table Dengan Data Dari Table Lain Pada SQL"

Bagaimana bingungkah kalian? sama, saya juga bingung saat pertama menggunakan Trigger dalam pembuatan database. Tapi dengan banyak latihan pasti akan cepat mengerti dan bisa memodifikasinya. Selamat mencoba dan Semoga bermanfaat. :)

"Om Santhi, Santhi, Santhi Om"



Comments:

Ada 4 comments pada “Cara Membuat Trigger di MySQL Database”
Suhendri Mr said...
pada hari 

Terus diposting artikel terkait my SQL nya sob sangat bermanfaat ini. Salam blogging!

masbahrun said...
pada hari 

tolong donk post tentang md5, bagai mana cara meng enkript dan bagimana mendiskrip

Mas ILham said...
pada hari 

Bermanfaat banget bos,

www.ilham-96.blogspot.com

Fiam Sahala said...
pada hari 

berguna banget ni kebetulan aku lagi nyari trigger buat pembelian misal di tabel stok terdiri dari id_barang, nama_barang, stok_barang, harga_barang dan di tabel beli ada id_beli, nama_barang, jumlah, harga jadi klo misal kita insert di tabel beli maka secara otomatis stok_barang di tabel stok akan berkurang sejumlah jumlah dari tabel beli. ini kodingnya.
delimiter $
create trigger beli
before insert on beli for each row
begin
update stok set stok_barang=stok_barang-New.jumlah where nama_barang=New.nama_barang;
end$

Social Media


Facebook Page

Programming Tutorial


Info


Tips
Downloads
Friends
 
This Blog is proudly powered by Blogger.com | Template by Bali Web Development | Privacy Policy | Rise Up!!