Advertisement
Guest User

trigger

a guest
Jul 25th, 2014
223
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
SQL 0.69 KB | None | 0 0
  1. CREATE OR REPLACE TRIGGER zugang_trigger
  2. BEFORE INSERT OR UPDATE ON Standortzugriff
  3. REFERENCING NEW AS NEW OLD AS OLD
  4. FOR EACH ROW
  5.   DECLARE
  6.   not_authorized_exception EXCEPTION;
  7.   PRAGMA EXCEPTION_INIT(not_authorized_exception, -20101);
  8.     var1 INTEGER;
  9.   var2 INTEGER;
  10.   BEGIN
  11.   SELECT sstufe INTO var1 FROM Standort WHERE Standort.Raumnr = :NEW.st_raum;
  12.   SELECT sfreigabe INTO var2 FROM Mitarbeiter WHERE Mitarbeiter.Persnr = :NEW.st_persnr;
  13.   IF (var2 < var1) THEN
  14.     RAISE not_authorized_exception;
  15.     END IF;
  16.     EXCEPTION
  17.       WHEN not_authorized_exception THEN
  18.            RAISE_application_error(-20101, 'Mitarbeiter hat keinen Zugang zu diesem Raum');
  19.   END IF;
  20.   END;
  21.   /
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement