프로시저(Procedure)란?
특정 작업을 수행 하는, 이름이 있는 PL/SQL BLOCK 이다.
매개 변수를 받을 수 있고, 반복적으로 사용 할 수 있는 BLOCK 이다.
보통 연속 실행 또는 구현이 복잡한 트랜잭션을 수행하는 PL/SQL BLOCK을 데이터베이스에 저장하기 위해 생성 한다.
프로시저 문법
CREATE OR REPLACE procedure name IN argument OUT argument IN OUT argument IS [변수의 선언] BEGIN --> 필수 [PL/SQL Block] -- SQL문장, PL/SQL제어 문장 [EXCEPTION] --> 선택 -- error가 발생할 때 수행하는 문장 END; --> 필수
- - CREATE OR REPLACE 구문을 사용하여 생성 한다.
- - IS 로 PL/SQL의 블록을 시작 한다.
- - LOCAL 변수는 IS 와 BEGIN 사이에 선언 한다.
프로시저 작성 예제
-- 프로시저의 이름은 update_sal이다 -- update_sal 프로시저는 사번을 입력받아 급여를 인상 한다. -- 프로시저를 끝마칠 때에는 항상 "/"를 지정 한다. SQL> CREATE OR REPLACE PROCEDURE update_sal /* IN Parameter */ (v_empno IN NUMBER) IS BEGIN UPDATE emp SET sal = sal * 1.1 WHERE empno = v_empno; COMMIT; END update_sal; /
프로시저 실행 예제
EXECUTE 문을 이용해 프로시저를 실행 한다.
SQL> EXECUTE update_sal(7369); PL/SQL 처리가 정상적으로 완료되었습니다. -- 7369번 사원의 급여가 10% 인상 되었는지 확인해 보기 바란다.
태그
문서에 대하여
- - 강좌 URL : http://www.gurubee.net/lecture/1041
- - 이 문서를 다른 블로그나 홈페이지에 게재하실 경우에는 출처를 꼭 밝혀 주시면 고맙겠습니다.~^^
- - 구루비의 모든 강좌는 크리에이티브 커먼즈의 저작자표시-비영리-동일조건변경허락(BY-NC-SA) 라이선스에 따라 자유롭게 사용할 수 있습니다.
'IT > 오라클' 카테고리의 다른 글
Oracle PL/SQL 강좌 3.1. 스칼라 데이터 타입 (0) | 2015.11.24 |
---|---|
Oracle PL/SQL 강좌 2.2. 함수(FUNCTION) (0) | 2015.11.24 |
Oracle PL/SQL 강좌 1.3. PL/SQL Block의 유형 (0) | 2015.11.24 |
Oracle PL/SQL 강좌 1.2. PL/SQL Block의 구조 (0) | 2015.11.24 |
Oracle PL/SQL 강좌 1.1. PLSQL 이란? (0) | 2015.11.24 |