转至繁体中文版     | 网站首页 | 图文教程 | 资源下载 | 站长博客 | 图片素材 | 武汉seo | 武汉网站优化 | 
最新公告:     敏韬网|教学资源学习资料永久免费分享站!  [mintao  2008年9月2日]        
您现在的位置: 学习笔记 >> 图文教程 >> 数据库 >> ORACLE >> 正文
PL/SQL异常处理         ★★★★

PL/SQL异常处理

作者:闵涛 文章来源:闵涛的学习笔记 点击数:750 更新时间:2009/4/22 22:00:00


 
    在设计PL/SQL程序时,经常会发生这样或那样的错误,异常处理就是针对错误进行处理的程序段,Oracle 9i中的异常处理分为系统预定义异常处理和自定义异常处理两部分。

系统预定义异常处理

    系统预定义异常处理是针对PL/SQL程序编译、执行过程中发生的问题进行处理的程序。 下列代码为正确代码,在【SQLPlus Worksheet】中能够顺利执行。
    ―――――――――――――――――――――――――――――――――――――
    set serveroutput on
    declare
       tempno integer:=90;
    begin
       tempno:=tempno+1;
    end;
    ―――――――――――――――――――――――――――――――――――――
    【配套程序位置】:第9章\ correctplsql.sql。
    下列代码为错误代码,在【SQLPlus Worksheet】中的执行结果如图9.56所示。

    【配套程序位置】:第9章\ wrongplsql.sql。
    由于代码有错误,因此将激活系统预定义的异常处理,并得出如下提示信息。

    Oracle 9i提供了很多异常处理,读者可以尝试修改可以正常运行的程序,并执行修改后的程序,就可以发现调用了哪些异常处理,下面着重介绍如何自定义异常处理。

自定义异常处理

    1. 定义异常处理
    定义异常处理的语法如下:
    declare
        异常名 exception;
    2. 触发异常处理
    触发异常处理的语法如下:
    raise 异常名;
    3. 处理异常
    触发异常处理后,可以定义异常处理部分,语法如下:
    Exception
    When 异常名1 then
       异常处理语句段1;
    When 异常名2 then
       异常处理语句段2;
    4. 实例
    下面的PL/SQL程序包含了完整的异常处理定义、触发、处理的过程。定义名为salaryerror的异常,在scott.emp数据表中查找empno=7566的记录,将其值放入变量tempsal中,判断tempsal值若不在900和2600之间,说明该员工的薪水有问题,将激活异常处理,提示信息。
    在【SQLPlus Worksheet】中执行下列PL/SQL代码,执行结果如图9.57所示。

    【配套程序位置】:第9章\ exceptiondefine.sql。



[Web开发]VB异常处理语句介绍  [网页制作]JS异常处理Try...Catch 语句介绍
[办公软件]Office之VBA异常处理语句On Error介绍及实例  [Web开发]精通ASP.NET(基于VB.NET)( 三)VB.NET异常处理
教程录入:mintao    责任编辑:mintao 
  • 上一篇教程:

  • 下一篇教程:
  • 【字体: 】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
      注:本站部分文章源于互联网,版权归原作者所有!如有侵权,请原作者与本站联系,本站将立即删除! 本站文章除特别注明外均可转载,但需注明出处! [MinTao学以致用网]
      网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)

    同类栏目
    · Sql Server  · MySql
    · Access  · ORACLE
    · SyBase  · 其他
    更多内容
    热门推荐 更多内容
  • 没有教程
  • 赞助链接
    更多内容
    闵涛博文 更多关于武汉SEO的内容
    500 - 内部服务器错误。

    500 - 内部服务器错误。

    您查找的资源存在问题,因而无法显示。

    | 设为首页 |加入收藏 | 联系站长 | 友情链接 | 版权申明 | 广告服务
    MinTao学以致用网

    Copyright @ 2007-2012 敏韬网(敏而好学,文韬武略--MinTao.Net)(学习笔记) Inc All Rights Reserved.
    闵涛 投放广告、内容合作请Q我! E_mail:admin@mintao.net(欢迎提供学习资源)

    站长:MinTao ICP备案号:鄂ICP备11006601号-18

    闵涛站盟:医药大全-武穴网A打造BCD……
    咸宁网络警察报警平台