trigger

entry33 galeri
    26.
  1. veritabanında bir tabloya veri girişi/değişikliği/silinmesinden önce veya sonra veritabanının yapmasını istediğiniz işlem bütününün adıdır.
    oracle için yazılmış trigger örneği;

    CREATE OR REPLACE TRIGGER TRg_KIMLIKLOG -- Triggerimizin Adı
    AFTER DELETE OR UPDATE
    ON DBUSER.KIMLIK // hangi tabloya işlem yapıldığında tetikleyecek
    REFERENCING NEW AS NEW OLD AS OLD
    FOR EACH ROW
    BEGIN
    IF UPDATING THEN // eğer kimlik tablosunda kayıt değiştiriliyorsa kimlik_log tablosuna değişmeden önceki verileri yaz.
    INSERT INTO DBUSER.KIMLIK_LOG
    (
    ADI,
    SOYADI,
    ADRESI,
    NOTU,
    ISLEM,
    ISLEMYAPANKULLANICI,
    ISLEMTARIHI
    )
    VALUES
    (
    :OLD.ADI,
    :OLD.SOYADI,
    :OLD.ADRESI,
    :OLD.NOTU,
    'Degistirildi',
    USER,
    SYSDATE
    );

    ELSIF DELETING THEN // eğer kimlik tablosunda kayıt siliniyorsa kimlik_log tablosuna değişmeden önceki verileri yaz.
    INSERT INTO DBUSER.KIMLIK_LOG
    (
    ADI,
    SOYADI,
    ADRESI,
    NOTU,
    ISLEMYAPANKULLANICI,
    ISLEMTARIHI
    )
    VALUES
    (
    :OLD.ADI,
    :OLD.SOYADI,
    :OLD.ADRESI,
    :OLD.NOTU,
    'Silindi',
    USER,
    SYSDATE
    );
    END IF;
    END;
    0 ...
  1. henüz yorum girilmemiş
© 2025 uludağ sözlük