CREATE OR REPLACE TRIGGER
trig_placa_asystenta
BEFORE UPDATE OF
placa_pod ON pracownicy
FOR EACH ROW
WHEN ( NEW.ETAT = 'ASYSTENT' )
DECLARE
v_max NUMBER; v_min NUMBER;
BEGIN
SELECT placa_min, placa_max INTO v_min,
v_max
FROM etaty WHERE nazwa = :NEW.etat;
IF :NEW.placa_pod NOT BETWEEN v_min AND
v_max THEN
RAISE_APPLICATION_ERROR(-20001,'Za wysoka placa');
END IF;
END;