[Oracle] Package내에 프로시저(Procedure)와 함수(Function) 실행방법

패키지안에 있는 함수 또는 프로시저를 실행하려고 할때의 방법이다.

 

프로시저와 함수의 가장 큰 차이는 반환값이 있냐 없냐의 차이이다. 프로시저는 반환값이 없기 때문에 CALL이나 EXEC의 명령어를 통해서 실행시킬 수 있다.

 

프로시저는 SQL문으로 실행시킬수 있다.

ex) CALL 패키지명.프로시저명() 

    EXEC 패키지명.프로시저명() 

 

하지만 함수는 반환값이 있기 때문에 프로시저 처럼 실행시킬수 없다.

 

먼저 반환받을 변수를 만들고 함수를 실행시켜 변수에 반환받은 값을 넣어줘야 한다.

 

문법

DECLARE

    변수 타입;

BEGIN

    변수 := 패키지.함수();

END;

 

 

ex)

 

 

함수를 실행하고 값을 보고싶다면 

DBMS_OUTPUT.PUT_LINE( ); 이 함수를 이용해 주면 된다.

 

ex)

댓글

Designed by JB FACTORY