Procedure
#
Find similar titles
- (rev. 10)
- Dragon
Structured data
- Category
- Database
프로시저(Procedure) #
일정한 작업을 수행하는 SQL 문장의 집합으로 복잡한 트랙젝션을 수행하는 SQL을 구현할 때 주로 쓰이며 데이터 베이스에 저장하여 사용한다.
- 프로시저는 절차적 SQL을 의미한다.
- 프로시저는 SQL보다 더 강력한 구조의 언어로써 절차적 코딩법을 추가하여 SQL을 확장한 것이다.
- 프로시저는 중첩될 수 있는 블록으로 구성된다.
프로시저 작성 문법 #
CREATE OR REPLACE PROCEDURE procedure_name (
argument IN/OUT type,
argument IN/OUT type,
...
)
IS
variable_declaration (변수선언)
BEGIN
[PL/SQL Block]
statements (문장)
[EXCEPTION]
statements (문장)
END
;
- Create 첫문장의 ()안에 in, out 또는 in/out 변수를 선언한다.
- 내부에서 사용할 변수는 IS 구문 다음에 선언한다.
- IS 구문 이후 반드시 Begin과 End 구분 사이에 sql문을 작성한다.
프로시저 생성 예제 #
CREATE OR REPLACE PROCEDURE SP_insert_data (
p_seq IN NUMBER
)
IS
v_txt VARCHAR2 (100) : = 'Hello World!';
BEGIN
UPDATE T_DATA
SET msg = v_txt
, regdt = SYSDATE
WHERE SEQ = p_seq;
COMMIT;
END SP_insert_data
;
프로시저 실행 문법 #
EXECUTE procedure_name(IN parameter);
또는
EXEC procedure_name(IN parameter);
프로시저 실행 예제 #
> EXECUTE SP_insert_data(103);
명령이 성공적으로 실행되었습니다.
프로시저 삭제 문법 #
DROP PROCEDURE procedure_name;
프로시저 삭제 예제 #
> DROP PROCEDURE SP_insert_data;
명령이 성공적으로 실행되었습니다.