다연이네

[days17] PL/SQL의 패키지(Package) 본문

Oracle

[days17] PL/SQL의 패키지(Package)

 다연  2020. 11. 23. 18:36
반응형

PL/SQL의 패키지
  관계되는 타입,
  프로그램 객체,
  서브프로그램(procedure, function)을 논리적으로 묶어놓은 것

 

- 패키지 명세 부분

CREATE OR REPLACE PACKAGE employee_pkg 
as 
    --저장 프로시저...
      procedure print_ename(p_empno number); 
      procedure print_sal(p_empno number); 
end employee_pkg; 

- 예시 

CREATE OR REPLACE PACKAGE BODY employee_pkg as 
   
    procedure print_ename
    (
     p_empno number
     ) 
     is 
       l_ename emp.ename%type; 
     begin 
       select ename into l_ename 
         from emp 
          where empno = p_empno; 
       dbms_output.put_line(l_ename); 
     exception 
       when NO_DATA_FOUND then 
         dbms_output.put_line('Invalid employee number'); 
     end print_ename; 
  
    procedure print_sal
    (
     p_empno number
     ) 
     is 
     l_sal emp.sal%type; 
     begin 
      select sal 
       into l_sal 
       from emp 
       where empno = p_empno; 
     dbms_output.put_line(l_sal); 
    exception 
     when NO_DATA_FOUND then 
       dbms_output.put_line('Invalid employee number'); 
   end print_sal; 
  
   end employee_pkg; 
   
   execute employee_pkg.print_ename(1234); 
   execute employee_pkg.print_ename(7782);
   execute employee_pkg.print_sal(7782); 

 

반응형
Comments