Puedes usar show errors
después de ver compiled with warnings
, o consulta los user_errors
view para ver qué está mal más tarde.
Una cosa obvia es que no ha agregado el prefijo old
referencia con dos puntos:
CREATE or REPLACE TRIGGER BeforeUpdateReport
BEFORE
UPDATE ON REPORT
FOR EACH ROW
Begin
INSERT INTO reportUpdate
Values(:old.ID,sysdate);
END;
/
También es mejor especificar los campos de la tabla de destino en el insert
declaración:
INSERT INTO reportUpdate (report_id, updatedate)
Values(:old.ID,sysdate);
Pero tienes update_date
definido en su secuencia de comandos de creación de tablas como number(32)
, lo cual no tiene sentido. Como señaló @realspirituals, debería ser:
CREATE TABLE reportUpdate (report_id number, updatedate date);