Home » » Pengenalan Trigger DML

Pengenalan Trigger DML

Posted by Catatan Wong Awam on Friday, 21 April 2017

Selamat Siang, bagaimana kabar kalian semua? Semoga kabar baik semua yah.. Siang hari ini yang cukup panas kita akan membahas tentang Trigger, lebih tepatnya Trigger DML menggunakan SQL SERVER. Trigger itu hampir mirip dengan Stored Procedure yang dapat di eksekusi secara otomatis. Jadi apa sih TRIGGER DML itu? Trigger DML ialah sejenis stored procedure khusus yang dapat di jalankan secara otomatis bila ada Query DML seperti INSERT, UPDATE atau DELETE pada suatu tabel.

untuk memahami lebih lanjut, kita buat sebuah database dan tabelnya seperti di bawah ini.


Type Dari Trigger DML

1. AFTER INSERT
After Trigger di eksekusi setelah perintah DML selesai.

Kasus : buatlah sebuat after trigger bernama aftertrigger1  untuk eksekusi DML di tabel pelanggan

Kita buat Triggernya dulu :

CREATE TRIGGER triggerafter1
ON pelanggan
FOR INSERT,UPDATE,DELETE
AS
BEGIN
print 'DATA BERHASIL DI INPUT'
END

Setelah selesai kita buat, lalu insertkan data ke tabel pelanggan

INSERT INTO pelanggan values ('Anton', 'Sujarwo')

HASIL :



Dari Query di atas kita dapat lihat bahwa, Query Insert telah mengakibatkan eksekusi otomatis pada trigger triggerafter1. Untuk memastikan data tersebut masuk maka, kita jalankan Query Berikut :

SELECT * FROM pelanggan

HASIL :



2. TRIGGER INSTEAD
Trigger Instead adalah sebuah trigger yang akan berjalan secara otomatis di tempat pemicu aksi DML. Jadi kalau kita mamasukan seuatu record atau data dan kita memiliki sebuah TRIGGER INSTEAD untuk INSERT maka apapun aksi yang di di definiskan di trigger akan langsung di jalankan.

Kasus : buatkan TRIGGER INSTEAD pada tabel pelanggan untuk menjalankan perintah INSERT.

Kita buat triggernya dulu :

CREATE TRIGGER InsteadTrigger
ON pelanggan
INSTEAD OF INSERT
AS
BEGIN
print 'DATA BERHASIL DI INPUT'
END

lalu kita insert lagi datanya :

INSERT INTO pelanggan values ('Budi','Sanusi')

maka hasilnya :




Dari hasil di atas dapat di lihat bahwa Query INSERT memicu trigger di jalankan pada INSTEAD TRIGGER. Kita ihat Hasil nya :



Oke cukup sekian dari saya, Terima kasih dan semoga bermanfaat


0 comments:

Post a Comment

Translate

.comment-content a {display: none;}