Da du ikke postede fejlen, må jeg gætte. Mit gæt er, at problemet er det name
er ikke en gyldig identifikator i denne sammenhæng. Du skal referere til enten :new.name
eller :old.name
. :old.name
vil være NULL
på en indsættelse, mens :new.name
vil være NULL
på en sletning, så jeg går ud fra, at du vil have noget lignende
CREATE OR REPLACE TRIGGER add_del
BEFORE INSERT OR DELETE ON persons
FOR EACH ROW
BEGIN
IF INSERTING THEN
INSERT INTO logs (who, what) VALUES (:new.name, 'Insert into persons');
ELSE
INSERT INTO logs (who, what) VALUES (:old.name, 'Delete from persons');
END IF;
END;