Advertisement
Guest User

Untitled

a guest
Apr 29th, 2016
53
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.98 KB | None | 0 0
  1. /*
  2. DROP TABLE statDepEmp;
  3.  
  4. CREATE TABLE statDepEmp(
  5. numDept NUMBER(2) NOT NULL PRIMARY KEY,
  6. nbEmp NUMBER(2),
  7. totalSalaire NUMBER(9,2)
  8. );
  9. */
  10.  
  11. CREATE OR REPLACE PACKAGE packEmp AS -- spec
  12. PROCEDURE pIniStat;
  13. FUNCTION nouvSalaire(salaire NUMBER, pourcentage NUMBER) RETURN NUMBER;
  14. END packEmp;
  15. /
  16.  
  17. CREATE OR REPLACE PACKAGE BODY packEmp AS -- body
  18.  
  19. PROCEDURE pIniStat IS
  20.  
  21. CURSOR emp_cursor IS
  22. SELECT EMP.numDept, COUNT(EMP.matrEmp) as nombre, NVL(SUM(EMP.salaireEmp), 0) as sommeSalaire
  23. FROM EMP
  24. LEFT OUTER JOIN DEPT ON EMP.numDept = DEPT.numDept
  25. GROUP BY EMP.numDept;
  26.  
  27. BEGIN
  28. FOR i IN emp_cursor
  29. LOOP
  30. INSERT INTO statDepEmp VALUES(i.numDept, i.nombre, i.sommeSalaire);
  31. END LOOP;
  32.  
  33. END pIniStat;
  34.  
  35. FUNCTION nouvSalaire(salaire NUMBER, pourcentage NUMBER) RETURN NUMBER IS
  36. BEGIN
  37. return 8;
  38. END nouvSalaire;
  39.  
  40. END packEmp;
  41. /
  42.  
  43. begin
  44. packEmp.pIniStat;
  45. DBMS_OUTPUT.PUT_LINE('test');
  46. end;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement