[오라클 PL/SQL] 프로시저 RETURN 문 사용하기
- Database(데이터베이스)/Oracle
- 2019. 11. 29. 01:00
안녕하세요.
오늘은 PL/SQL 에서 프로시저 RETURN 문 사용 방법에 대해서 알려드리려고 합니다.
함수에서 사용한 RETURN문을 프로시저에서도 사용할 수 있는데 그 쓰임새와 처리 내용은 다릅니다. 함수에서는 일정한 연산을 수행하고 결과 값을 반환하는 역할을 했지만, 프로시저에서는 RETURN문을 만나면 이후 로직을 처리하지 않고 수행을 바로 종료, 즉 프로시저를 빠져 나가 버리게 됩니다.
이전에 설명 드렸던 반목문에서 EXIT를 통해서 반목문을 빠져 나가는 것과 비슷합니다.
그럼 예제를 통해서 프로시저에 RETURN문을 한번 사용해 보도록 할게요.
RETURN 문이 있는 프로시저 생성
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
CREATE OR REPLACE PROCEDURE my_new_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 --SCORE 점수가 0 보다 작은 값이 들어 오면 메시지 출력후 프로시저 빠져 나간다. IF TO_NUMBER(p_score) < 0 THEN DBMS_OUTPUT.PUT_LINE('최소 score 값은 0보다 커야 합니다.'); RETURN; END IF;
END; |
위에서 생성한 프로시저를 간단히 설명 드리자면, STUDENT 테이블이 있는데 해당 테이블에 SCORE 컬럼이 있고 만약 SCORE 값이 0보다 작은 값을 입력하여 프로시저를 실행할 경우 RETURN 문을 실행하여 프로시저를 빠져 나오게 끔 구현한 프로시저 구문 입니다.
실행 결과
1 |
EXECUTE my_new_proc('2', '2', '한지민', '38', '2' ,'-1'); |
이처럼, score 값에 -1 값을 넣고 my_new_proc 프로시저를 실행하니까 출력 값이 “최소 score 값은 0보다 커야 합니다.” 라는 문구가 출력된 모습을 확인하실 수 있습니다.
이로써 프로시저에서 RETURN 문 사용 방법에 대해서 알아 보았습니다.
감사합니다.^^
'Database(데이터베이스) > Oracle' 카테고리의 다른 글
[오라클 PL/SQL] PL/SQL 예외처리 SQLCODE, SQLERRM 이용하여 예외 처리 하기 (0) | 2019.12.01 |
---|---|
[오라클 PL/SQL] PL/SQL 예외처리 하는 방법 (0) | 2019.11.30 |
[오라클 PL/SQL] PL/SQL 프로시저 매개변수 IN OUT 이란? (0) | 2019.11.28 |
[오라클 PL/SQL] PL/SQL OUT 매개변수 (0) | 2019.11.27 |
[오라클 PL/SQL] PL/SQL 매개변수 디폴트 값 설정 하는 방법 (0) | 2019.11.26 |
이 글을 공유하기