Posted by : Nur Rokhman Kamis, 07 Juni 2012


Pengertian
Trigger adalah blok PL/SQL yang disimpan dalam database dan akan diaktivasi ketika kita melakukan statement-statement SQL (DELETE, UPDATE, dan INSERT) pada sebuah tabel. Aktivasi trigger didasarkan pada event yang terjadi di dalam tabel tersebut sehingga trigger dapat membantu dalam menjaga integritas dan konsistensi data. Implementasi trigger yang sering ditemui dalam dunia nyata adalah untuk mengeset dan mengubah nilai kolom dalam suatu tabel sehingga validasi nilai dari tabel tersebut akan terjaga. Adanya trigger dalam database akan meringankan kita dalam pembuatan aplikasi karena di dalam aplikasi yang kita buat, kita tidak perlu lagi untuk melakukan validasi data.

Membuat Trigger
Oracle telah menyediakan statement CREATE TRIGGER untuk membuat sebuah trigger yang selanjutnya akan diaktivasi berdasarkan event tertentu. Secara umum, event trigger terbagi menjadi dua, yaitu BEFORE (sebelum) dan AFTER (setelah). Event tersebut menandakan kapan trigger akan diaktivasi, apakah sebelum ataukah sesudah proses yang dilakukan di dalam tabel bersangkutan.

Model-model yang digunakan untuk menspesifikasi aturan basis data aktif adalah model ECA (Event-Condition-Action). Aturan dalam model ECA memiliki tiga komponen yaitu:




1. Event
Event yang memicu suatu rule tersebut biasanya berupa operasi perubahan basis data yang secara eksplisit ditambahkan ke basis data. Namun pada umumnya, bisa berupa event temporal atau jenis event eksternal yang lain.
2. Condition
Condition menentukan apakah suatu rule dijalankan atau tidak. Ketika suatu trigger dijalankan, maka bagian condition (bersifat optional) akan dievaluasi jika didefinisikan oleh yang membuat trigger. Jika evaluasi bagian condition bernilai TRUE maka aksi suatu rule dijalankan.
3. Action
Action biasanya berupa statement sql.
Penggunaan Trigger
Sintaks umum penciptaan trigger adalah:
CREATE [OR REPLACE] TRIGGER trigger_name
{BEFORE | AFTER} triggering_event
[referencing_clause]
[WHEN trigger_condition]
[FOR EACH ROW]
Trigger_body;

Dimana trigger_name adalah nama trigger, triggering_event menspesifikasikan event yang firing (menyalakan) trigger, dan trigger_body adalah kode utama untuk trigger. Referencing_clause digunakan untuk menunjuk pada data dalam baris yang saat ini sedang dimodifikasi dengan nama yang berbeda. Jika ada trigger_condition dalam klausa WHEN, pertama akan dievaluasi dan kemudian trigger_body dieksekusi hanya jika hasil evaluasi bernilai TRUE.
Trigger dapat dinyalakan sebelum (before) atau sesudah (after) eksekusi statement, dan dapat dinyalakan sekali tiap baris yang dipengaruhi atau sekali tiap statement. Kombinasi dari tiga faktor ini menetukan tipe trigger. Ada total 12 kemungkinan: 3 statement x 2 timing x 2 level.


Leave a Reply

Subscribe to Posts | Subscribe to Comments

Unduh Adobe Flash player

Recent Post

Popular Post

Labels

5G (2) ads (2) AI (2) Blogspot (7) CodeIgniter (1) CyberCrime (6) daihatsu (1) database (9) delphi (6) download (1) ebook (3) entertainment (7) facebook (2) Film (1) firefox (1) flashdisk (1) google (2) islam (5) IT (22) keamanan komputer (9) komputer (31) mediafire (1) microsoft (5) multimedia (5) mysql (1) OpenAI (1) OS (5) pemrograman (3) Photography (1) php (4) phpmysql (1) postgreSQL (2) seo (2) teknologi (24) teknologi hijau (1) Telekomunikasi (6) tips dan trik (27) tokoh islam (4) Umum (16) windows (11) wisata (1)

Followers

Google+ Google+ Follow Twitter Add Facebook RSS FEED email
Diberdayakan oleh Blogger.

-- Copyright © 2016 Beluluk - Powered by Blogger --