Oracle Audit Trigger Prompt Вопрос пользователя - PullRequest
0 голосов
/ 03 февраля 2020

У меня есть две таблицы TEST_DEPT и TEST_DEPT $ AUDIT в Oracle 11g. Я сделал вставка обновление удаление после триггера . Однако последний столбец таблицы Audit называется REASON . Идея состоит в том, чтобы после обновления , например, Oracle предложить пользователю заполнить столбец REASON .

Это то, что после триггер выглядит так:

CREATE OR REPLACE TRIGGER auditDEPTAR AFTER
INSERT OR UPDATE OR DELETE ON TEST_DEPT FOR EACH ROW
DECLARE
    test TEST_DEPT$audit%ROWTYPE;
BEGIN
    IF    inserting THEN test.change_type := 'INSERT';
    ELSIF updating  THEN test.change_type := 'UPDATE';
    ELSE                 test.change_type := 'DELETE';
    END IF;

    test.changed_by   := user;
    test.changed_time := sysdate;    

    CASE test.change_type
    WHEN 'INSERT' THEN
       test.DEPTNO := :new.DEPTNO;
       test.DNAME  := :new.DNAME;
       test.LOC    := :new.LOC;
    ELSE
       test.DEPTNO := :old.DEPTNO;
       test.DNAME  := :old.DNAME;
       test.LOC    := :old.LOC;
    END CASE;

    INSERT INTO TEST_DEPT$audit VALUES test;
END;

Можно ли это сделать, или я должен использовать функцию или что-то еще для обхода? Пожалуйста, помогите!

...