网站大量收购独家精品文档,联系QQ:2885784924

Les23-异常处理 PL-SQL讲义 课件.ppt

  1. 1、本文档共24页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Les23-异常处理 PL-SQL讲义 课件

二十三.异常(Exception)处理 目标 结束本节课后,应当达到如下目标: 定义PL/SQL 异常 辨认未处理( unhandled)的异常 列出和使用各种不同的PL/SQL异常处理函数 捕获未预料到的错误 描述在嵌套块中传递(propagate)异常的途径、效果 定制PL/SQL 异常处理信息 使用 PL/SQL来控制异常 异常是什么? PL/SQL 在执行的过程当中所产生的标识符。 它是怎样产生的? 出现Oracle 错误 使用raise语句,来明确地产生. 怎样对它进行处理? 使用处理句柄来捕获它. 向调用时的环境进行传递. 处理异常 捕获异常 异常类型 Oracle 预定义异常 非Oracle 预定义异常 用户定义异常 跟踪异常 语法: 跟踪异常的方法指导 WHEN OTHERS 这个子句应当放在异常处理模块的最后. 异常处理部分以关键字EXCEPTION打头. 在异常处理部分可以有多个异常处理句柄. 但在跳出该块之前,只应当有一个异常处理句柄被调用. 跟踪Oracle预定义的错误 每种错误都有一个标准的名字,在异常处理子程序中可以直接引用这些名字。 例如如下预定义异常: NO_DATA_FOUND TOO_MANY_ROWS INVALID_CURSOR ZERO_DIVIDE DUP_VAL_ON_INDEX 预定义的异常 语法: 跟踪非预定义的 Oracle 错误 非预定义错误 跟踪一个Oracle错误代码:–2292, 一个完整性约束冲突 跟踪异常的函数 SQLCODE 返回错误代码的数字值 SQLERRM 返回与错误代码相联系的错误信息 跟踪异常的函数 例子: 处理用户自定义的异常 用户自定义异常 调用环境的异常处理方式 传递(Propaga)异常 RAISE_APPLICATION_ERROR过程 语法: 这是一个很有用的过程,可以使得用户在存储子过程中使用这个过程,以处理用户自定义错误 只能从一个可执行的存储子过程中调用 RAISE_APPLICATION_ERROR过程 可以在两个地方使用: 可执行代码部分 异常处理部分 将错误信息返回给用户,这些错误信息跟其它Oracle 错误是兼容的。 总结 异常的类型: Oracle预定义的异常 非Oracle预定义的异常 用户定义的异常 异常的跟踪 异常的处理: 在PL/SQL 块内部跟踪异常 传递异常 作业概览 操作命名异常 创建和调用用户定义的异常 Guidelines Begin the exception-handling section of the block with the keyword EXCEPTION. Define several exception handlers, each with its own set of actions, for the block. When an exception occurs, PL/SQL processes only one handler before leaving the block. Place the OTHERS clause after all other exception-handling clauses. You can have at most one OTHERS clause. Exceptions cannot appear in assignment statements or SQL statements. Trapping Predefined Oracle Server Errors Trap a predefined Oracle Server error by referencing its standard name within the corresponding exception-handling routine. For a complete list of predefined exceptions, see PL/SQL User’s Guide and Reference, Release 8, “Error Handling.” Note: PL/SQL declares predefined exceptions in the STANDARD package. It is a good idea to always consider the NO_DATA_FOUND and TOO_MANY_ROWS exceptions, which are the most common. Predefined Exceptions Trapping Predefined Oracle Server Excepti

您可能关注的文档

文档评论(0)

qiwqpu54 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档