PJF16

sal_check

Jan 18th, 2015
283
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
SQL 0.62 KB | None | 0 0
  1. CREATE OR REPLACE
  2. TRIGGER sal_check_ct
  3. FOR INSERT OR UPDATE OF job, sal ON emp
  4. compound TRIGGER
  5.    
  6.     temp_sal emp.sal%TYPE;
  7.    
  8. BEFORE each ROW IS 
  9. BEGIN
  10.     CASE
  11.     WHEN inserting OR updating
  12.     THEN       
  13.         SELECT MAX(sal) INTO temp_sal FROM emp WHERE job = :NEW.job;
  14.         IF (temp_sal < :NEW.sal) THEN
  15.             raise_application_error (-20002,'error - Gehalt ist zu hoch!');
  16.       END IF;
  17.      
  18.     SELECT MIN(sal) INTO temp_sal FROM emp WHERE job = :NEW.job;
  19.    
  20.     IF (temp_sal > :NEW.sal) THEN
  21.       raise_application_error (-20002, 'error - Gehalt zu niedrig!');
  22.     END IF;
  23.     END CASE;
  24. END BEFORE each ROW;
  25.  
  26. END sal_check_ct;
Advertisement
Add Comment
Please, Sign In to add comment