오라클 PLSQL 예외(Exception)처리, Predefined Exception, Non-Predefined Exception, ,사용자 정의 오류, RAISE, , RAISE_APPLICATION_ERROR
http://ojc.asia/bbs/board.php?bo_table=LecSQLnPlSql&wr_id=580
6. PL/SQL Exception
n 예외(Exception)란? PL/SQL블록 실행중 발생하는 오류이며, 예외가 발생했을 때 적절히 처리를 해주어야만 원할한 PL/SQL 프로그램이 된다.
n Exception절은 반드시 정의해야 하는 것은 아니지만 추후 발생될 수 있는 문제를 위해서 반드시 기술하는 것이 좋다.
n PL/SQL에서 예외가 발생하는 경우는 서버에 의해 자동으로 발생되는 경우와 사용자가 RAISE, RAISE_APPLICATION_ERROR등을 기술하여 예외를 발생시키는 두가지 경우가 있다.
[형식]
6.1 Predefined Exception
n 오라클 서버에 사전에 정의된 예외, 자주 발생하므로 오라클 서버 오류번호와 예외명을 미리 매칭시켜 둔 것이다.
6.2 Non-Predefined Exception
n 오라클 서버 오류중 서버에 미리 정의되지 않은 예외
n Declare절에서 예외명을 정의하고 EXCEPTION_INIT 함수를 이용하여 예외와 오라클 서버 오류코드를 매핑하면 된다.
6.3 사용자 정의 오류(User Defined Exception)
6.3.1 RAISE 구문을 이용하는 방법
n 오라클 서버 오류가 아니라 사용자가 정의한 논리적인 오류.
n Declare절에서 예외명을 정의하고 예외를 발생시키고 싶은 곳에서 RAISE 구문을 이용하면 된다. 물론 EXCEPTION절에서는 해당 예외명으로 받아서 처리하면 된다.
6.3.2 RAISE_APPLICATION_ERROR 구문을 이용하는 방법
n 사용자가 임의의 조건으로 SQLCODE와 SQLERRM을 정의할 수 있다.
n SQLCODE는 -20999번에서 -20000번 사이 정수로 정의하며 EXCEPTION절을 사용하지 않아도 된다.
댓글 없음:
댓글 쓰기