Amigos Bom dia!
Tenho a seguinte trigger, eu gostaria de colocar uma condição nela, o valor ora_login_user seja diferente de system e oracle.. alguém tem uma idéia de como fazer? segue o corpo da trigger.
CREATE OR REPLACE TRIGGER TRG_AUDIT_DDL
AFTER DDL ON DATABASE
DECLARE
SQL_TEXT ORA_NAME_LIST_T;
STMT CLOB;
N NUMBER;
BEGIN
N :=ORA_SQL_TXT(SQL_TEXT);
FOR I IN 1..N LOOP
STMT :=STMT ||SQL_TEXT(I);
END LOOP;
INSERT INTO SYSTEM.AUDIT_DDL(USERNAME,USER_OS,IP,OBJ_NAME,OBJ_TYPE,OBJ_OWNER,
DDL_TYPE,SQL,ALTER_DATE)
VALUES (ORA_LOGIN_USER, SYS_CONTEXT(‘USERENV’,’OS_USER’),
SYS_CONTEXT(‘USERENV’,’IP_ADDRESS’),ORA_DICT_OBJ_NAME,
ORA_DICT_OBJ_TYPE,ORA_DICT_OBJ_OWNER,ORA_SYSEVENT, UPPER(STMT),
SYSDATE);
END;
/
Abraços,
Samuka