Ver Mensaje Individual
  #6 (permalink)  
Antiguo 03/06/2008, 21:04
Avatar de kikolice
kikolice
 
Fecha de Ingreso: marzo-2004
Mensajes: 1.510
Antigüedad: 20 años, 9 meses
Puntos: 7
Respuesta: Como hacer una trigger de auditoría en ORACLE

Cita:
Iniciado por Angubas Ver Mensaje
También puedes crear uno que guarde todo el registro:

CREATE OR REPLACE TRIGGER NOMBRE_TRIGGER
BEFORE INSERT
ON TABLA_A_AUDITAR
REFERENCING NEW AS NEW OLD AS OLD
FOR EACH ROW
BEGIN
IF INSERTING THEN
INSERT INTO TABLA_AUDITORIA
(AUD_USER,
AUD_FECHA,
AUD_TIPO,
AUD_TERMINAL)
VALUES
(USER,
SYSDATE,
'INSERT',
USERENV('TERMINAL'));
END IF;
END;

Espero que te sirva.
si mi teoria no me falla

si estas creando un trigguer

BEFORE INSERT

no tendrias la necesidad de identificar que transaccion se esta llevando a cabo

IF INSERTING THEN

siempre caeria ese if, por lo tanto es innecesario

por otro lado no tengo la informacion fresca para confirmar si un BEFORE INSERT se dispara despues de validaciones internas de oracle, como violar llaves primarias, foraneas, etc pero yo usaria un AFTER INSERT para esto
__________________
Blogzote.com :-) Mi blog