Advertisement
Guest User

Untitled

a guest
Jul 22nd, 2017
59
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PL/SQL 0.77 KB | None | 0 0
  1. CREATE OR REPLACE TRIGGER trig_employe BEFORE INSERT OR UPDATE ON EMPLOYE FOR each ROW
  2. DECLARE
  3.     com FLOAT;
  4.  
  5. BEGIN
  6.     SELECT AVG(commission)
  7.     INTO com
  8.     FROM EMPLOYE;
  9.  
  10.     IF :NEW.fonction = 'Vendeur' AND :NEW.commission > :NEW.salaire/2
  11.     THEN
  12.         :NEW.salaire := :NEW.salaire + 0.1 * :NEW.salaire;
  13.     END IF;
  14.     IF :NEW.date_embauche < TO_DATE('01/01/2002', 'dd/mm/yyyy') AND :NEW.commission IS NULL
  15.     THEN
  16.         :NEW.commission := com;
  17.     END IF;
  18. END;
  19. .
  20.  
  21.  
  22. ############################################################################
  23.  
  24. ############################################################################
  25.  
  26.  
  27. CREATE OR REPLACE TRIGGER update_nbEmp AFTER INSERT ON EMPLOYE FOR EACH ROW
  28. BEGIN
  29.     UPDATE SERVICE
  30.     SET nbEmployes = nbEmployes + 1
  31.     WHERE serNo = :NEW.serNo;
  32. END;
  33. .
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement