Oracle认证第五章知识点辅导(3)
时间:2013-10-24
来源:Oracle认证考试网 浏览次数:74
【华夏培训网:中国教育培训第一门户】
代码演示:自定义异常SQL DECLARE 2 sal emp.sal%TYPE; 3 myexp EXCEPTION; ① 4 BEGIN 5 SELECT sal INTO sal FROM emp WHERE
代码演示:自定义异常
SQL> DECLARE
2 sal emp.sal%TYPE;
3 myexp EXCEPTION; ①
4 BEGIN
5 SELECT sal INTO sal FROM emp WHERE ename='JAMES';
6 IF sal<5000 THEN
7 RAISE myexp; ②
8 END IF;
9 EXCEPTION
10 WHEN NO_DATA_FOUND THEN
11 dbms_output.put_line('NO RECORDSET FIND!');
12 WHEN MYEXP THEN ③
13 dbms_output.put_line('SAL IS TO LESS!');
14 END;
15 /
SAL IS TO LESS!
PL/SQL procedure successfully completed
代码解析:
① 用EXCEPTION定义一个异常变量myexp
② 在一定条件下用RAISE引发异常myexp
③ 在异常处理部分,捕获异常,如果不处理异常,该异常就抛给程序执行者。
² 引发应用程序异常
在Oracle开发中,遇到的系统异常都有对应的异常码,在应用系统开发中,用户自定义的异常也可以指定一个异常码和异常信息,Oracle系统为用户预留了自定义异常码,其范围介于-20000到-20999之间的负整数。引发应用程序异常的语法是:
RAISE_APPLICATION_ERROR(异常码,异常信息)
Oracle认证