CREATE OR REPLACE TRIGGER Tr_Einbau BEFORE INSERT OR UPDATE ON Einbau FOR EACH ROW DECLARE Baugrp Bauteil.Baugruppe%TYPE := NULL; BEGIN IF INSERTING THEN SELECT Baugruppe INTO Baugrp FROM Bauteil WHERE Bauteil.BtNr = :new.BtNr; IF Baugrp = NULL THEN SELECT sq_einbau.nextval INTO :new.EbNr FROM dual; ELSE RAISE_APPLICATION_ERROR (-20734,'Fehler'); END IF; END IF; IF UPDATING THEN :new.EbNr := :old.EbNr; END IF; END; /