Advertisement
Guest User

Untitled

a guest
Jun 10th, 2018
124
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PL/SQL 0.72 KB | None | 0 0
  1. CREATE OR REPLACE TRIGGER trigger_towar --utworzenie triggera
  2. BEFORE DELETE OR UPDATE OF stan, cena ON towar --trigger wykona sie przed usuwaniem, lub aktualizacja kolumn stan i cena w tabeli towar
  3. FOR EACH ROW --wykona się dla każdego wiersza
  4.  
  5. BEGIN
  6.   IF UPDATING THEN --jeżeli aktualizujemy
  7.     IF ((NEW:cena < 0) OR (NEW:stan <0)) THEN --a cena lub stan mniejsza niż 0
  8.       RAISE_APPLICATION_ERROR(-20001, 'NIE MOŻNA ZMIENIAĆ CENY NA MNIEJSZA NIZ 1 ANI EDYTOWAC STANU');    
  9.     END IF;
  10.  
  11.   ELSIF DELETING THEN --jeżeli usuwamy
  12.     IF (old:stan  > 0) THEN --a stary stan wiekszy niz 0
  13.       RAISE_APPLICATION_ERROR(-20001, 'NIE MOŻNA USUWAĆ TOWARÓW ZE STANEM WIĘKSZYM NIŻ 0;);
  14.    END IF;
  15.  END IF;
  16.  
  17. END;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement