PL/SQL 用户自定义异常操作实例
Posted WEL测试
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PL/SQL 用户自定义异常操作实例相关的知识,希望对你有一定的参考价值。
用户自定义异常
PL/SQL允许根据程序的需要定义自己的异常。用户定义的异常必须声明,然后明确地提出使用一个RAISE语句或程序DBMS_STANDARD.RAISE_APPLICATION_ERROR。
声明一个异常的语法是:
DECLARE
my-exception EXCEPTION;
操作实例源码:
-- Created on 2018/4/2 by E.WANG
/*
PL/SQL允许根据程序的需要定义自己的异常。
用户定义的异常必须声明,
然后明确地提出使用一个RAISE语句或程序DBMS_STANDARD.RAISE_APPLICATION_ERROR。
*/
DECLARE
/*
创建与属性对应类型的变量;
通过%获取表属性类型
*/
e_empno emp.empno%type;
e_ename emp.ename%type;
e_job emp.job%type;
--定义一个无效的员工编号异常
invalid_empno_expection exception;
BEGIN
--e_empno值为-10
e_empno:=-10;
--给变量赋值
if e_empno<0 then
raise invalid_empno_expection;
else
SELECT ename,job INTO e_ename,e_job
FROM emp
WHERE empno=e_empno;
end if;
--输出对应变量的值
dbms_output.put_line(employee No: || e_empno || employee Name: || e_ename || employee Position: || e_job);
exception
when invalid_empno_expection then
dbms_output.put_line(Emno must be greater than zero!);
when no_data_found then
dbms_output.put_line(No such customer!);
when others then
dbms_output.put_line(Error!);
END;
运行结果截图:
以上是关于PL/SQL 用户自定义异常操作实例的主要内容,如果未能解决你的问题,请参考以下文章
ORA-06510: PL/SQL: 未处理的用户定义异常 [Oracle]