PL/SQL 08 异常 exception
--PL/SQL错误
编译时
运行时
--运行时的出错处理
EXCEPTION
--异常处理块
DECLARE
…
BEGIN
…
EXCEPTION
WHEN OTHERS THEN
handler_error(…);
END;
--用户自定义的异常
DECLARE
e_TooManyStudents EXCEPTION;
…
BEGIN
…
RAISE e_TooManyStudents;
…
EXCEPTION
WHEN e_TooManyStudents THEN
…
END;
--预定义的ORACLE异常
ORA-0001
DUP_VAL_ON_INDEX
ORA-0051
TIMEOUT_ON_RESOURCE
ORA-1001
INVALID_CURSOR
…
ORA-6533
SUBSCRIPT_BEYOND_COUNT
--触发异常
RAISE exception_variable
DECLARE
A EXCEPTION
BEGIN
…
RAISE A;
…
EXCEPTION
WHEN A THEN
…
END;
--处理异常
EXCEPTION
WHEN e_TooManyStudents THEN
INSERT INTO log_file(info)
VALUES(‘Major 1100 has ‘ || v_CurStudents || ’ max aloowed is ‘ || v_Max);
END;
--处理所有的异常
EXCEPTION
WHEN e_TooManyStudents THEN
…
WHEN OTHERS THEN
v_ErrCode := SQLCODE;
v_ErrText := SUBSTR(SQLERRM, 1, 200);
INSERT INTO log_file(code, message, info)
VALUES(v_ErrCode, v_ErrText, ‘ORACLE Error’);
END;
最新文章
- 如何解决xml在eclipse下的拼写报错
- JAVA SSH 框架介绍
- 【转】python的内存管理机制
- [未完成]关于DOM的总结
- JavaWeb国际化
- [ES6] Class Inherit
- 监控父元素里面子元素内容变化 DOMSubtreeModified
- div中嵌套div速度将会同样很慢
- Unity5UGUI 官方教程学习笔记(四)UI Image
- zoj 1610 Count the Colors(线段树延迟更新)
- 使用es6特性封装async-mysql
- robot framework 牛刀一试
- Win10下通过IIS调试ASP程序遇到的问题和解决方案
- HP DL380服务器RAID信息丢失数据恢复方法和数据恢复过程分享
- Spring Data Jpa简单了解
- JavaScript模块化思想之CommonJS、AMD、CMD、UMD
- 0005-20180422-自动化第六章-python基础学习笔记
- JAVA代码设置selector不同状态下的背景
- 回文日期(NOIP2016)
- 7.打开文件、文件读写操作、with方式、文件常用函数