[오라클 PL/SQL] PL/SQL 프로시저 생성 방법 및 사용 예제


안녕하세요.

 

오늘은 오라클 PL/SQL에서 프로시저에 대해서 알아보고 어떻게 생성하고 어떻게 호출까지 하는지에 대해서 예제를 통해서 알아 보려고 합니다.

 

간단히 프로시저에 대해서 정의를 드리자면, 프로시저란 특정한 로직을 처리하기만 하고 결과 값을 반환하지는 않는 오브젝트라고 이해하시면 되겠습니다.


 

그럼 프로시저 생성 구문에 대해 알아 보겠습니다.

 

프로시저 생성 구문


CREATE OR REPLACE PROCEDURE 프로시저 이름

         (매개변수명1 [IN | OUT | IN OUT] 데이터타입 [:= 디폴트값],..)

 

IS[AS]

         변수, 상수 등 선언

BEGIN

         실행부

[EXCEPTION 예외 처리부]

END [프로시저 이름];

 

프로시저의 생성 구문은 위와 같습니다.

 

그러면 실제로 이제 프로시저를 하나 생성해 보도록 하겠습니다.

 

제가 예제로 만들 프로시저는 STUDENT 테이블에 신규 학생을 저장하는 프로시저를 한번 만들어 보도록 하겠습니다.


 


위와 같이 STUDENT 테이블이 있습니다.

 

여기에 my_new_student 프로시저를 생성해서 새로운 학생의 정보를 STUDENT 테이블에 저장해 보도록 하겠습니다.

 

예제 코드


CREATE OR REPLACE PROCEDURE my_new_student_proc

(p_school_no IN WIN.STUDENT.SCHOOL_NO%TYPE,

p_class IN WIN.STUDENT.CLASS%TYPE,

p_name IN WIN.STUDENT.NAME%TYPE,

p_age IN WIN.STUDENT.AGE%TYPE,

p_grade IN WIN.STUDENT.GRADE%TYPE,

p_score IN WIN.STUDENT.SCORE%TYPE)

 

IS

 

BEGIN

    INSERT INTO WIN.STUDENT( SCHOOL_NO, CLASS, NAME, AGE, GRADE, SCORE )

    VALUES (p_school_no, p_class, p_name, p_age, p_grade, p_score);

 

COMMIT;

 

END;

 

프로지서 호출


EXEC my_new_student_proc ('1', '4', '전현무', '29', '3', '99');


 

실행 결과



위와 같이 새로운 학생인 전현무학생이 제대로 STUDENT 테이블에 저장된 것을 확인하실 수 있습니다.

 

감사합니다.^^


728x90

이 글을 공유하기

댓글

Designed by JB FACTORY