Ver Mensaje Individual
  #1 (permalink)  
Antiguo 18/05/2014, 23:47
cocode
 
Fecha de Ingreso: mayo-2014
Mensajes: 12
Antigüedad: 9 años, 11 meses
Puntos: 0
Triggers/ disparador

tENGO UN PROBLEMA EN ESTE TRIGGER, me da error en la linea 16 (v_gratificacion_posterior :=new.gratificacion;), y no entiendo porque



Código SQL:
Ver original
  1. CREATE OR REPLACE TRIGGER audit_trigger BEFORE INSERT OR DELETE OR UPDATE OF gratificacion
  2. ON PARTICIPAR FOR EACH ROW
  3. DECLARE
  4. v_gratificacion_anterior NUMBER;
  5. v_gratificacion_posterior NUMBER;
  6. BEGIN
  7. SELECT osuser INTO v_usuario FROM v$session WHERE audsid=USERNV('SESSIONID');
  8. IF INSERTING THEN
  9. v_gratificacion_anterior :=NULL;
  10. v_gratificacion_posterior :=NEW.gratificacion;
  11. ELSIF DELETING THEN
  12. v_gratificacion_anterior :=OLD.gratificacion;
  13. v_gratificacion_posterior :=NULL;
  14. ELSIF UPDATING THEN
  15. v_gratificacion_anterior := OLD.gratificacion;
  16. v_gratificacion_posterior :=NEW.gratificacion;
  17. END IF;
  18. INSERT INTO auditoria (usuario, codigoPonente, codigoConferencia, fecha, gratificacionAnterior, gratificacionPosterior)
  19. VALUES(v_usuario, codPonente, refConferencia, sysdate, v_gratificacion_anterior, v_gratificacion_posterior);
  20. END;

Última edición por gnzsoloyo; 19/05/2014 a las 04:58 Razón: USAR HIGHLIGHT "SQL", POR FAVOR.