Problema con trigger

Hola he seguido este ejemplo para hacer un trigger (tengo una tabla1 y una tabla2 igual que tabla1):
CREATE OR REPLACE TRIGGER nombre_del_trigger
BEFORE DELETE OR UPDATE ON tabla1
REFERENCING NEW AS NEW OLD AS OLD FOR EACH ROW
BEGIN
INSERT INTO tabla2(campos) VALUES(:OLD.campo1, :OLD.campo2...);
EXCEPTION
WHEN DUP_VAL_ON_INDEX THEN
UPDATE tabla2 SET campo1=:OLD.campo1, campo2=:OLD.campo2... WHERE campo_clave1_tabla2=:OLD.campo_clave1_tabla1 and campo_clave2_tabla2=:OLD.campo_clave2_tabla1...
END;
Y funciona, ¿pero qué hago si quiero que el trigger se dispare solo cuando determinados campos de la tabla1 se modifiquen o que borren el registro?, otra cosa que me he dado cuenta es que si modifico el mismo registro de tabla1 se vuelve a guardar en la misma posición ya antes guardada en tabla2, que debo hacer para que se genere la nueva modificación en otro registro de la tabla2.
Muchas Gracias

1 Respuesta

Respuesta
1
Lo siento, pero soy administrador y la verdad es que de programación ando corto y en estos momentos no puedo ponerme a estudiar el problema.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas