栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

PL/SQL异常处理

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

PL/SQL异常处理

PL/SQL异常处理

PL/SQL块分为3个部分:
声明部分,可执行部分,异常处理部分。
plsql的异常处理和Java的异常处理类似

1.PL/SQL异常

在程序运行出现错误时叫做异常。
发生异常后,语句将停止执行,控制权转移到PL/SQL块的异常处理部分。

2种异常类型

1.预定义异常
PL/SQL代码违反Oracle规则或超出系统限制,隐式触发。
2.用户自定义异常
用户在PL/SQL块的声明部分定义的异常,RAISE显式触发。

declare
  emp_name emp.ename%type;
begin
  select ename into emp_name from emp where empno=1;
  dbms_output.put_line(emp_name);
exception
  -- 预定义异常
  when no_data_found then
    dbms_output.put_line('人员不存在');  
end;
/
-- 用户自定义异常

declare
  emp_hiredate emp.hiredate%type;
  excep1 exception;
begin
  select hiredate into emp_hiredate from emp where empno = 7369;
  if emp_hiredate > to_date('19770616', 'yyyymmdd') then
    raise excep1;
  else
    dbms_output.put_line('入职时间正常');
  end if;  
exception
  when excep1 then
    dbms_output.put_line('入职时间异常');
end;
/
2.RAISE_APPLICATION_ERROR

创建用户定义的错误信息
错误编号必须在-20000~-20999之间
错误信息长度可长达2048Bytes
RAISE_APPLICATION_ERROR(error_number, error_message);
查看效果,可将上述代码
dbms_output.put_line(‘入职时间异常’);
替换为
raise_application_error(-20001, ‘日期错误’);

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/778047.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号