Membuat TRIGGER pada database MySQL

Trigger adalah suatu prosedur yang otomatis akan dijalankan apabila “pemicu” dari trigger itu dipanggil.

sebagai contoh: penghapusan satu tabel akan memicu suatu trigger untuk menghapus pada tabel yang lain yang telah ditunjuk terlebih dahulu. dibawah ini saya berikan satu contoh penggunaan trigger pada database MySQL.

Sebagai contoh kita siapkan terlebih dahulu sebuah database dan tabel yang akan diuji coba seperti dibawah ini:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
create database mytrigger;
 
create table coba (
kode varchar(5) not null,nama varchar(35) not null,
primary key (kode))
 
create table coba2 (
kode varchar(5) not null,nama varchar(35) not null,
primary key (kode))
 
create table tran (
kode varchar(5) not null,
kodetran varchar(5),jumlah double,
primary key nkode (kode,kodetran))

Kemudian buatlah sebuah trigger dengan kode seperti dibawah ini:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
delimiter $$
 
create trigger auto_insert_coba2
before insert on coba for each row
begin
  insert into coba2 (kode,nama) values (NEW.kode,NEW.nama);
end$$
 
create trigger auto_update_coba2
before update on coba for each row
begin
  update coba2 set nama=NEW.nama where kode=NEW.kode;
end$$
 
create trigger auto_delete_coba2
before delete on coba for each row
begin
delete from coba2 where kode=OLD.kode;
delete from tran where kode=OLD.kode;
end$$

pada trigger di atas setiap kali perubahan dilakukan terhadap tabel COBA maka secara otomatis
tabel COBA2 akan dipengaruhi / terpengaruh.
Pembuatan trigger ini dapat digunakan untuk berbagai keperluan, selamat mencoba…..!

Jangan lupa untuk memberikan komentar anda. terima kasih.

0 0 votes
Article Rating
Subscribe
Notify of
guest
CommentLuv badge
[+] kaskus emoticons nartzco

 
What is 0 + 8 ?
Please leave these two fields as-is:
59 Comments
Inline Feedbacks
View all comments
adit
adit
9 years ago

terimakasi mass aryanto… artikelnya sangat membantu …
kalo ada artikel syntax untuk fungtions, view, stroed procs ya mass
terus penjelasan tetang fusngsi tsb.
kalo udah ada link nya
terimakasi …

klik saya
9 years ago
anto2k
9 years ago

:toast

modyar
8 years ago

mas ganteng deh..

aryanto
8 years ago

@modyar, aduuuh, kok baru tahu yak..ha.ha.ha.ha.ha
:alay

faisal fahri f
faisal fahri f
8 years ago

(kode,nama) values (NEW.kode,NEW.nama); bang ini diisi apa .???

anto2k
8 years ago

new.kode itu otomatis diambil dari tabel yang baru kita tambah recordnya misalkan kita record baru di tabel COBA maka otomatis new.kode akan berisikan record baru dari tabel COBA yang langsung ditambahkan pada COBA2