# 예외처리

<예외처리 구문>

EXCEPTION WHEN 예외명1 THEN 예외처리 구문1

                WHEN 예외명2 THEN 예외처리 구문2

                ...

                WHEN OTHERS THEN 예외처리 구문n;

 

예외 정보를 참조하기 위해 오라클에서 SQLCODE, SQLERRM이란 빌트인 함수를 제공한다.

 

자세한 예외 정보 확인하기

 - DBMS_UTILITY.FORMAT_ERROR_BACKTRACE

 - DBMS_UTILITY.FORMAT_ERROR_STACK

 - DBMS_UTILITY.FORMAT_CALL_STACK

 

* 사용자 정의 예외

CREATE OR REPLACE ...

 

IS

  변수...

  ex_invalid_depid EXCEPTION;

BEGIN

 

  ...

  IF vn_cnt = 0 THEN

    RAISE ex_invalid_depid;

  END IF;

 

  ...

  COMMIT;

 

EXCEPTION

WHEN ex_invalid_depid THEN

  DBMS_OUTPUT.PUT_LINE('해당 부서번호가 없습니다');

WHEN OTHERS THEN

  ...

END;

 

# 트랜잭션

 

+ Recent posts