Membuat Trigger di MySQL

05.44

Akhirnya paham tentang materi baru di kelas, materi tentang trigger aku mau sharing sedikit aja mumpung ada waktu luang . skalian update blog lama gak ngeblog .

Trigger adalah prosedur yang tersimpan pada SQL server yang secara otomatis dijalankan apabila data dalam tabel dirubah karena perintah SQL (seperti INSERT/UPDATE/DELETE)

Sintak secara umum adalah :

CREATE [DEFINER = {user | CURRENT USER}]TRIGGER trigger_name trigger_time trigger_eventON tbl_name FOR EACH ROW trigger_smt


Untuk trigger_time : adalah kapan trigger terjadi ( BEFORE / AFTER )
Untuk trigger_event : adalah event yang dilakukan dalam trigger itu sendiri seperti insert/update/delete
Untuk trigger_smt : adalah aksi trigger

Jadi trigger adalah prosedur yang dapat berlaku pada 1 tabel yang berelasi dengan tabel lain sehingga jika kita melakukan sebuah aksi seperti insert atau update atau delete maka akan terjadi hal yang sama seperti apa yang kita eventkan pada tabel yang pertama. *bahasa gampangnya* 

contoh nya ada dibawah ini agar lebih paham :

Misal ada kasus tentang semisal kita insert pada tabel A pada kolom yang ada yaitu a maka juga akan insert di tabel B pada kolom b.



Maka sintak trigger yang digunakan adalah: 

Penjelasannya adalah :
(1) membuat trigger yang bernama INSERT_A
(2) trigger time kapan aksi trigger dijalankan. Pada kasus    ini trigger dijalankan SETELAH kita insert pada A maka akan otomatis insert juga di tabel B. Maka kita menggunakan AFTER , kita bisa juga menggunakan BEFORE pada kondisi tertentu. INSERT pada baris ini adalah sebuah event.
(3) Untuk setiap baris yang kita insert di tabel A akan insert juga otomatis di setiap baris tabel B
(4)Mulai aksi trigger
(5) INSERT pada kasus ini ialah menambah atau menginputkan atau menginsertkan . INTO B adalah kemana  atau apa nama tabel yang akan kita insert. Pada Kondisi tertentu juga bisa kita gunakan UPDATE atau DELETE untuk mengganti INSERT. set yaitu mengeset isi kolom b dengan referensi sesudah perubahan.
NEW bisa diganti dengan OLD , tergantung dengan kondisi semisal dibutuhkan referensi sebelum perubahan maka kita menggunakan OLD.

Contoh latihan sederhana : 
Buat trigger untuk membuat prosedur apabila kita menambah pengeluaran barang di detail trans,  maka di bagian tabel stok barang akan berkurang secara otomatis, dengan tabel yang tersedia dibawah ini .


<<<



<<< tabel detail_trans




Maka sintak yang digunakan adalah :





Demikian penjelasan yang dapat saya sampaikan :) ada kurag dan lebihnya mohon maaf dan apabila ada salah dan kurang mohon dimaklumi dan mohon commentnya apabila punya pendapat lain saling belajar dari orang lain karena kita takan pernah bisa hidup tanpa orang lain :) terimakasih telah mengunjungi blog saya :) Happy blogging :) ikuti materi materi selanjutnya ya guys :)


You Might Also Like

3 komentar

Like us on Facebook