프로시저는 PL/SQL을 통해 만들어지고 특정 작업을 수행하는 서브 프로그램이다. 자주 사용되는 SQL문을 DB 객체로 생성해서 저장한 후 사용시에 프로시저명을 호출해서 사용한다. PL/SQL에서 FUNCTION 은 리턴값을 반환하는데 반해 프로시저는 지정된 작업을 수행 후에 결과값을 반환할 수도 있고 반화나지 않을 수 있다. FUNCTION과 프로시저의 차이점은 FUNCTION은 SQL문 내부에서 사용할 수 있지만, 프로시저는 EXEC 또는 EXECUTE의 실행문을 통해서 사용된다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 |
CREATE OR REPLACE PROCEDURE "프로시저명" (
PARAMETER IN|OUT DATATYPE
) IS
--변수선언부
BEGIN
--처리내용
EXCEPTION
--예외처리부분
END;
|
cs |
CREATE OR REPLACE PROCEDURE : 프로시저를 생성 또는 이미 있으면 기존 프로시저를 대체
프로시저명 : 생성할 프로시저이름
파라메터 : 프로시저에게 전달할 파라미터 이름과 데이터 타입을 명시한다.
IN : 변수값을 입력받을때 사용
OUT : 프로시저 처리 후 리턴할 변수명
INOUT : 파라미터로 변수값을 받고 프로시저 처리후 리턴할 변수명
변수 선언 부 : 사용할 변수를 명시한다.
출처:실전 DB 모델링과 SQL for ORACLE
'DataBase' 카테고리의 다른 글
오라클 문자열 합치기 LISTAGG (0) | 2015.12.17 |
---|---|
소계와 합계 구하는 방법 (1) (0) | 2015.12.17 |
COPY_T 테이블이란? (0) | 2015.12.16 |
누계를 구하는 방법에 대하여 (2) (0) | 2015.12.14 |
누계를 구하는 방법에 대하여 (1) (0) | 2015.12.10 |