프로그래밍/DB

패키지

lee ho jun 2017. 2. 3. 15:17
반응형
1
2
3
4
5
create or replace PACKAGE employee_pkg 
is
  procedure print_ename(p_empno number);
  procedure print_sal(p_empno number);
 end employee_pkg;
cs

패키지는 함수 , 프로시저 등등을 논리적으로 묶어놓은 집합이다.


패키지는 정의부분과 구현부분 두가지로 나뉘어진다.


위의 소스는 employee_pkg 라는 패키지를 정의를 한 것이다.


위의 상태로만 패키지명.프로시저명 을 실행 시키면 에러가 난다. 


이유는 선언만 했을 뿐 구현하지 않았기 때문이다.


1
2
3
4
5
6
7
8
9
10
11
create or replace PACKAGE body employee_pkg 
is
  procedure print_ename(p_empno number) is
  begin
  null;
  end print_ename;
  procedure print_sal(p_empno number) is
  begin
  null;
  end print_sal;
 end employee_pkg;
cs

위의 정의한 부분을 구현한 부분은 위와 같다. 


프로시저 작성부분은 동일 하며 패키지 선언 부분에서 body 라는 구문이 들어간다.


구현을 하였다면 패키지명.프로시저명 을 실행시키면 정상적으로 실행 된다.



반응형