Oracle PL/SQL开发基础(第三十四弹:RAISE_APPLICATION_ERROR)
来源:互联网 发布:软件开发 私活 价格 编辑:程序博客网 时间:2024/05/21 08:01
RAISE_APPLICATION_ERROR
在子程序内部使用时,能从存储子程序中抛出自定义的错误消息。这样就能将错误报告给应用程序而避免范围未捕获异常。
语法如下:
RAISE_APPLICATION_ERROR(error_number, error_message, [keep_errors]);
error_number
是范围在-20000到-20999之间的负整数,error_message
是最大长度为2048字节的字符串,keep_errors
是一个可选的布尔值,True表示新的错误将被添加到已经抛出的错误列表中,False表示新的错误将替换当前的错误列表,默认为False。
RAISE_APPLICATION_ERROR
只能在存储的子程序中调用。当被调用时,将结束当前的子程序并返回一个用户自定义的错误代码和错误消息给应用程序,这些错误代码和错误消息可以像任何的Oracle错误一样被捕获。
看一个例子:
CRAETE OR REPLACE PROCEDURE registeremployee(...)AS ...BEGIN IF ... THEN RAISE_APPLICATION_ERROR(-20000, '员工编号不能为空'); ELSIF ... THEN RAISE_APPLICATION_ERROR(-20001, '员工已存在'); END IF; ...EXCEPTION WHEN OTHERS THEN RAISE_APPLICATION_ERROR(-20003, '插入数据时出现错误!异常编码:' || SQLCODE || '异常描述:' || SQLERRM);END;
别的子程序或语句块调用这个过程时,如果有相应的异常,就会像普通的Oracle错误一样被捕获。
阅读全文
1 0
- Oracle PL/SQL开发基础(第三十四弹:RAISE_APPLICATION_ERROR)
- Oracle PL/SQL开发基础(第三弹:修改表)
- Oracle PL/SQL开发基础(第三十三弹:EXCEPTION_INIT)
- Oracle PL/SQL开发基础(第二十四弹:游标基本结构)
- Oracle PL/SQL开发基础(第三十一弹:自定义异常)
- Oracle PL/SQL开发基础(第三十二弹:SQLCODE和SQLERRM)
- Oracle PL/SQL开发基础(第三十五弹:异常的传递)
- Oracle PL/SQL开发基础(第三十六弹:异常处理的一些经验)
- Oracle PL/SQL开发入门(第三弹:变量)
- Oracle PL/SQL开发基础(第四弹:索引)
- Oracle PL/SQL开发基础(第五弹:视图)
- Oracle PL/SQL开发基础(第六弹:简单查询)
- Oracle PL/SQL开发基础(第十弹:子查询)
- Oracle PL/SQL开发基础(第十四弹:序列)
- Oracle PL/SQL开发基础(第十五弹:同义词)
- Oracle PL/SQL开发基础(第十六弹:记录类型)
- Oracle PL/SQL开发基础(第十七弹:集合类型)
- Oracle PL/SQL开发基础(第二十一弹:基本函数)
- 字符串的交错组成
- 第七天
- leetcode(169). Majority Element
- 奔小康赚大钱
- 序列流(SequenceInputStream)
- Oracle PL/SQL开发基础(第三十四弹:RAISE_APPLICATION_ERROR)
- 指针面试题
- 最基础问答
- Android Home键后Activity延迟启动
- 303. Range Sum Query
- Windows编程--互斥量Mutex操作函数
- Do Tick Volumes Work in Forex?
- javaweb项目,java代码生成的验证码,到服务器上显示不出来的问题!
- banner图失真解决方案