Rabu, 13 Januari 2010

Membuat Trigger di SQL Server 2000


Bagi teman-teman yang lagi disana atau disini mari kita belajar bareng membuat Trigger.
Trigger dalam bahasa Indonesia berarti macan (eh…..salah ya itu tiger…hehehehehe…..ngomong2 sendiri disalah-salahin sendiri). Menurut informasi yang saya baca,ini serius…….Trigger adalah pemicu. Trigger di SQL server fungsinya adalah untuk memberikan efek berantai pada perintah yang kita berikan pada SQL server yang telah kita pasangi trigger. Bingung ya, aq sendiri juga bingung, Uda langsung saja kita ke contoh kasus.
Kadang dalam mebuat design table di dalam database untuk menyimpan data transaksi kita harus membuat table Master dan Detail. Misalnya kita ingin menyimpan data transaksi penjualan maka kita kadang membuat dua table untuk menyimpan data tersebut. Misalnya TPenjualanMaster dan TPenjualanDetail. Ini contoh struktur datanya. Ingat ini Cuma contoh jadi sederhana saja :
TPenjualanMaster :









TPenjualanDetail :









Setelah table dibuat kita isi datanya.






Suatu hari ada kasus jika transaksi no J001 salah dan harus di hapus. Dan untuk melakukan perintah hapus, kita harus membuat perintah hapus dua kali yaitu untuk menghapus table TPenjualanMaster dan TPenjualanDetail. Apabila kita menggunakan trigger perintah hapus yang kita berikan hanya untuk menghapus table TPenjualanMaster saja misalnya, maka otomatis otomatis table TPenjualanDetail akan terhapus, because (wihh….pake bahasa latin sekarang..heheheheh) karena ditable TPenjualanMaster telah kita pasang dengan trigger untuk menghapus Table TPenjualanDetail. Ini contoh perintah triggernya :

CREATE TRIGGER hapus ON TPenjualanMaster
FOR DELETE
AS
delete TPenjualanDetail
from TPenjualanDetail, deleted
where TPenjualanDetail.KdJual = deleted.KdJual

Kalo diterjemahkan ke bahasa kita maksudnya gini, “Membuat trigger yang bernama hapus di table TPenjualanMaster yang perintahnya adalah hapuslah table TPenjualanDetail dengan KdJual yang sama yang dihapus pada table TPenjualanMaster”. Berarti apabila kita menghapus TpenjualanMaster pada data kdJual J001 maka otomatis data dengan kdJual J001 pada table TPenjualanDetail akan terhapus, tanpa kita harus memberikan perintah hapus untuk table TPenjualanDetail. Mudah sekali bukan, jadi coding kita tidak usa banyak-banyak waktu kita develop program karena biar database yang bekerja.
Trigger selain Delete juga ada Insert dan Update. Nanti dibahas pada postingan berikutnya. Sekarang saya mo kebelakang sebentar cari inspirasi…….
Digg Google Bookmarks reddit Mixx StumbleUpon Technorati Yahoo! Buzz DesignFloat Delicious BlinkList Furl

0 comments: on "Membuat Trigger di SQL Server 2000"

Posting Komentar