trigger

12
TRIGGER Sherly Christina, S.Kom., M.Kom

Upload: sherly-uda

Post on 23-Jun-2015

131 views

Category:

Engineering


3 download

DESCRIPTION

Trigger

TRANSCRIPT

TRIGGER

Sherly Christina, S.Kom., M.Kom

Pengertian

Trigger adalah blok program SQL, yang diassosiasikan dengan tabel & disimpan didalam database.

Pengertian

Trigger akan beraksi bila terjadi suatuevent,yaitu: Insert (penambahan record baru)Update (peremajaan record)Delete (hapus record)

Panduan

Gunakan sebagai jaminan, saat terjadi sesuatu di basis data, ada aksi yang akan dijalankan.

Batasi ukuran Trigger.

Panduan

Gunakan hanya untuk operasi-operasi terpusat dan bersifat global.

Jangan membuat trigger yang bersifat rekursif.

Manfaat

Meluruskan aturan-aturan yang harus berlaku. Menjaga nilai sebelum dimasukan ke dalam

database Keamanan sistem Membuat Historical Record (riwayat

perubahan)

Sintaks

Keterangan sintaks

trigger_name : nama trigger. trigger_time : kapan kita mengeksekusi trigger, apakah sebelum atau

sesudah perubahan pada row data table. Jadi pilihannya adalah AFTER atau BEFORE.

trigger_event : merupakan event atau peristiwa yang menyebabkan trigger dilakukan. Pilihan event tersebut adalah INSERT, UPDATE, DELETE.

tbl_name : nama table. trigger_body : statement-statement perintah SQL yang akan dilakukan. Jika

perintahnya lebih dari satu maka gunakan dalam blok statement BEGIN ... END.

Jika DEFINER dispesifikasikan maka kita memutuskan trigger tersebut dijalankan hanya oleh user tertentu (dalam format penulisan user@host). Jika tidak dispesifikasikan, maka user yang melakukan perubahan (CURRENT_USER) adalah pilihan default.

Contoh

Referensi "OLD" dan "NEW"

Karena trigger digunakan pada saat terjadi perubahan row data, maka kita perlu referensi ke row sebelum dan sesudah perubahan.

Sesuai namanya, OLD digunakan untuk referensi sebelum perubahan

NEW untuk referensi sesudah perubahan.

Keyword pada trigger

insert : new (baris data yang baru) update : new (baris data yang baru), old (baris

data yang lama) delete : old (baris data yang lama)

Ada Pertanyaan?