Oracle PL/SQL开发基础(第三十三弹:EXCEPTION_INIT)
发布时间:2020-12-12 13:33:59 所属栏目:百科 来源:网络整理
导读:如果有一些异常并没有异常名称,比如一些ORA-开头的异常并没有一个友好的预定义的异常定义,此时在WHEN子句中无法使用具体的异常名称,必须要使用OTHERS异常处理器进行捕捉。通过 EXCEPTION_INIT 编译指示,可以为这些不在预定义异常范围内的异常添加名称。
如果有一些异常并没有异常名称,比如一些ORA-开头的异常并没有一个友好的预定义的异常定义,此时在WHEN子句中无法使用具体的异常名称,必须要使用OTHERS异常处理器进行捕捉。通过 编译指示是指能在编译期而非运行时进行处理的编译指令。 编译指令 PRAGMA EXCEPTION_INIT (exception_name,oracle_error_number); PRAGMA是编译指令的声明,表示 看一个例子: DECLARE e_missingnull EXCEPTION; -- 先声明一个异常 PRAGMA EXCEPTION_INIT (e_missingnull,-1400); -- 将该异常与-1400进行关联 BEGIN INSERT INTO emp(empno) VALUES (NULL); -- 向emp表中不为空的列插入NULL值 COMMIT; EXCEPTION WHEN e_missingnull THEN DBMS_OUTPUT.put_line(SQLERRM); ROLLBACK; END; ? ? 最终会产生如下 输出: ORA-01400:无法将NULL插入("APPS"."EMP"."EMPNO")转载:https://blog.csdn.net/lianjiww/article/details/77074083
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |