728x90
반응형
SMALL
PL/SQL의 예외처리 방법
PL/SQL의 구조 중 예외처리부에서 예외를 처리할 수 있다. 흔히 JAVA의 try-catch를 생각할 수 있다.
표현법
EXCEPTION
WHEN 예외명 THEN 예외처리구문;
WHEN 예외명 THEN 예외처리구문;
...
WHEN OTHERS THEN 예외처리구문;
=> OTHERS : 어떤 예외든 발생되었을 때
오라클에서 미리 정의한 예외 => 시스템 예외
- NO_DATA_FOUND : 조회된 결과가 없을 때 발생
- TOO_MANY_ROWS : 조회된 결과가 여러 행일 때 (☞ 변수에 대입)
- ZERO_DIVIDE : 값을 0으로 나누려고 할 때
- DUP_VAL_ON_INDEX : UNIQUE 조건에 위배될 때 (중복이 있는 경우)
- ...
DECLARE
NUM NUMBER;
BEGIN
NUM := &숫자;
DBMS_OUTPUT.PUT_LINE(TO_CHAR(10 / NUM, '0.0'));
EXCEPTION
-- WHEN ZERO_DIVIDE THEN DBMS_OUTPUT.PUT_LINE('0으로 나눌 수 없습니다.');
WHEN OTHERS THEN DBMS_OUTPUT.PUT_LINE('0으로 나눌 수 없습니다.');
END;
/
=> 0을 입력받았을 시 예외처리 발생!
728x90
반응형
LIST
'데이터베이스' 카테고리의 다른 글
[ORACLE] SQL 객체 변경 ALTER - 컬럼 추가, 수정, 삭제 (0) | 2025.03.18 |
---|---|
[ORACLE] PL/SQL 반복문 - 기본 LOOP, FOR LOOP, WHILE LOOP (0) | 2025.03.17 |
[ORACLE] PL/SQL 제어문 - 조건문(IF-ELSIF-ELSE, CASE-WHEN-THEN) (0) | 2025.03.17 |
[ORACLE] PL/SQL - PL/SQL 구조와 변수 (0) | 2025.03.17 |
[ORACLE] SQL - 시퀀스(SEQUENCE) (0) | 2025.03.17 |