2015년 4월 2일 목요일

#113. PL/SQL강좌, 오라클패키지, 전위적 선언(Forward Declaration),PLSQL교육

#113. PL/SQL강좌, 오라클패키지, 전위적 선언(Forward Declaration),PLSQL교육

8.2 전위적 선언(Forward Declaration)




  • 동일한 PL/SQL블록에 여러 개의 Sub Program들이 올 수 있는데, 패키지내 함수, 프러시저는 서로 호출을 하거나 호출당하는 입장이다.
  • 어떤 프로시저/함수에서 다른 프로시저/함수를 호출할 때 호출당하는 프로시저/함수는 먼저 선언 되어야 한다.(구현부가 뒤쪽에 있는 경우)



SQL> DECLARE
  2    -- proc1 선언
  3    PROCEDURE proc1;
  4
  5    -- proc2 선언 및 구현
  6    PROCEDURE proc2(num NUMBER) IS
  7    BEGIN
  8      proc1();
  9    END;
 10
 11    -- proc1 구현
 12    PROCEDURE proc1 IS
 13    BEGIN
 14      proc2(8514790) ;
 15    END;
 16
 17  BEGIN
 18    NULL;
 19  END;
 20  /

PL/SQL 처리가 정상적으로 완료되었습니다.


SQL> DECLARE
  2    -- proc1 구현
  3    PROCEDURE proc1 IS
  4    BEGIN
  5      NULL;
  6    END;
  7    -- proc2 선언 및 구현
  8    PROCEDURE proc2(num NUMBER) IS
  9    BEGIN
 10      proc1();
 11    END;
 12  BEGIN
 13     NULL;
 14  END;
 15  /

PL/SQL 처리가 정상적으로 완료되었습니다.

댓글 없음:

댓글 쓰기