Pek çok veri tabanı sistemi triggerlarla çalışma imkanı sunmaktadır.Trigger kavramını veri tabanı sistemlerine farklı bir güç katmış ve programlamalı veri tabanı sistemlerinin gücünü ortaya çıkarmıştır. Özellikle DML işlemlerinde(Update,Delete,Insert) trigger çalıştırma ihtiyacı ortaya çıkar. Oracle aşağıda belirtilen başlıklar için triggerlar yazma olanağı sunar.
Trigger'lara pek çok konuda ihtiyaç duyulabilir. Trigger yapısı Auditing işlemlerinde veya bir tabloda yapılan bir işlemin başka bir tabloya etkilerinin yapılmasında oldukça büyük kolaylıklar sağlar.
Trigger, Stored Procedure ile benzer bir yapıdadır. Oracle da bir trigger PL/SQL veya Java ile yazılabilir. İlişkili işlem gerçekleştiğinde trigger oracle tarafından otomatik işletilir hangi kullanıcının veya hangi uygulamanın bağlı olduğunun önemi yoktur.
Sözü fazla uzatmadan database trigger örneğimi yazayım.
CREATE OR REPLACE TRIGGER LOGOFF_AUDIT_TRIGGER before LOGoff ON DATABASE DECLARE vHOSTAdi VARCHAR2(256); vIP VARCHAR2(256); BEGIN vHOSTAdi := SYS_CONTEXT('USERENV','HOST', 256); vIP := SYS_CONTEXT('USERENV','IP_ADDRESS', 256); INSERT INTO useraud(username,action,ip,host)VALUES(USER,'LogOFF',vIP,vHostAdi); END;
No comments yet.
RSS feed for comments on this post. TrackBack URL