SQL PL/SQL EXCEPTION

PL/SQL에서 발생하는 ERROR를 EXCEPTION이라 함

EXCEPTION

WHEN exception명1[OR exception명2...]THEN

문장1;

문장2;

[WHEN exception명3[OR exception명4...]THEN

문장1;

문장2;...]

[WHEN OTHERS THEN

문장1;

문장2; ...]

 

PREDEFINED EXCEPTION

DECLARE SECTION에서 선언할 필요 없음

- NO_DATA_FOUND : 데이터를 반환하지 않는 SELECT문

- TOO_MANY_ROWS : 두개 이상을 반환한 SELECT문

- INVALID_CURSOR : 잘못된 CURSOR 연산 발생

- ZERO_DIVIDE : 0으로 나누기

- DUP_VAL_ON_INDEX : UNIQUE COLUMN에 중복된 값을 입력할때

 

DECLARE

exception명 EXCEPTION;

PRAGMMA EXCEPTION_INIT(exception명, 에러번호);

BEGIN

...

EXCEPTION

WHEN exception명 THEN

...

END;

 

USER DEFINE EXCEPTION

DECLARE

exception 명 EXCEPTION;

BEGIN

RAISE exception명;

...

EXCEPTION

WHEN exception명 THEN

...

END;

 

SQLCODE, SQLERRM

일반적인 Error처리를 위하여 오라클에서 제공하는 함수인 SQLCODE, SQLERRM을 활용할 수 있다.

WHEN OTHER 절의 사용

-예상치 못한 Error처리를 위해서 미리 선언되지 않은 모든 종류의 Error를 처리함

SQLCODE

-오라클에서 지정된 Error Code를 숫자로 Return

SQLERRM

-오라클에서 지정된 Error Code에 해당하는 Error message를 Return

댓글

이 블로그의 인기 게시물

javascript ===, ==, >=, <=연산자

SQL oracle 내장함수[문자열 처리]

javascript 데이터 타입과 값