Thursday, December 7, 2006

SQL Server 2005 - TRIGGER

Trigger dibagi menjadi 2, trigger DML dan DDL.

DML Trigger => Trigger untuk INSERT, UPDATE, or DELETE statement terhadap table atau view

Apa kegunaan DML Trigger ?
Ilustrasi:
Suatu hari kita berencana untuk mengimport data customer dari table customer dan table Country dari db SQL Server 2000 ke db SQL Server 2005. Kita ingin memastikan selama proses impor,setiap value di kolom CountryCode dari table Customer dimiliki record di table Country pada SQL Server 2005. Lalu Kita pasang foreign key antar 2 table tersebut. Alhasil, referential integrity akan menjamin bahwa import akan gagal jika ketahuan ada value CountryCode yang tidak ada di table Country tapi ada di table Customer. Untuk memastikan proses import tidak gagal, maka kita perlu membuat sebuah trigger DML INSTEAD OF yang dapat me-log record yang gagal ke dalam file atau table.

DDL Trigger => Trigger untuk CREATE, ALTER, DROP, GRANT, DENY, REVOKE, atau UPDATE STATISTICS statement

Apa kegunaan DDL Trigger ?
Ilustrasi:
Suatu hari ada seseorang mengubah nama skema database, otomatis aplikasi yang menggunakan skema/table dari skema tersebut tidak bisa jalan. Untuk mencegah hal ini, kita dapat mengimplementasikan DDL AFTER triggers yang dapat menulis informasi user dan schema ke table log(table buatan).

No comments:

Post a Comment