Membuat Trigger pada database Mysql

Apa sih trigger itu?trigger adalah suatu prosedur yang otomatis akan dijalankan apabila “pemicu” dari trigger itu dipanggil, untuk jelasnya mari simak contoh berikut, pertama saya bikin tabel buku dan buku_old


CREATE TABLE `buku` (
 `id` INT(11) NOT NULL AUTO_INCREMENT,
 `judul` VARCHAR(255) NULL DEFAULT NULL,
 `penulis` VARCHAR(255) NULL DEFAULT NULL,
 `tanggal_terbit` DATE NULL DEFAULT NULL,
 `id_kategori` INT(11) NULL DEFAULT NULL,
 PRIMARY KEY (`id`)
)
COLLATE='latin1_swedish_ci'
ENGINE=InnoDB
AUTO_INCREMENT=23;
</pre>
CREATE TABLE `buku` (
`id` INT(11) NOT NULL AUTO_INCREMENT,
`judul` VARCHAR(255) NULL DEFAULT NULL,
`penulis` VARCHAR(255) NULL DEFAULT NULL,
`tanggal_terbit` DATE NULL DEFAULT NULL,
`id_kategori` INT(11) NULL DEFAULT NULL,
PRIMARY KEY (`id`)
)
COLLATE='latin1_swedish_ci'
ENGINE=InnoDB
AUTO_INCREMENT=23;

naa selajutkan kita bikin trigger, naa untuk mempermudah bikinnya saya menggunakan HeidiSql, berikut

Untitled

selanjutnya,

Untitled

perhatikan pada kolom event, ada AFTER INSERT, itu artinya akan dilakukan eksikusi Insert ke dalam tabel buku_old setelah melakukan insert kedalam tabel buku

Untitled

Naa sama seperti Insert tadi pada event tertulis BEFORE UPDATE, artinya lakukan update ke buku sebelum update ke buku_old

perhatikan ada alias NEW artinya itu yang baru di insertnya/data baru/record baru

Untitled

Naa pada event tertulis AFTER DELETE, artinya akan dilakukan delete pada tabel buku_old setelah delete pada tabel buku, perhatikan alias OLD pada where, itu artinya recode sebelumnya sebelum direplace/diganti, misal record awal o1, kemudian diganti ke 02, naa yang o1 itu ada OLD dan 02 adalah NEW. ok paham kan, naa coba lakukan perubahan(insert,update,delete) pada tabel buku dan lihat hasilnya pada buku_old

 

OK selamat mencoba dan selalu sukses untuk kalian

Tinggalkan Balasan

Isikan data di bawah atau klik salah satu ikon untuk log in:

Logo WordPress.com

You are commenting using your WordPress.com account. Logout / Ubah )

Gambar Twitter

You are commenting using your Twitter account. Logout / Ubah )

Foto Facebook

You are commenting using your Facebook account. Logout / Ubah )

Foto Google+

You are commenting using your Google+ account. Logout / Ubah )

Connecting to %s

%d blogger menyukai ini: