PL/SQL——编程——例外处理
1、系统预定义异常
no_data_found
case_not_found
cursor_already_open
invalid_number
--no_data_found异常
set serveroutput on;
--&NO表示从控制台输入参数
DECLARE
v_ename varchar2(30);--定义字符串变量
v_sal NUMBER(7,2);
BEGIN
SELECT ename,sal INTO v_ename,v_sal FROM emp WHERE empno=&NO;
dbms_output.put_line('雇员名:'||v_ename||'工资:'||v_sal);
EXCEPTION
WHEN no_data_found THEN
dbms_output.put_line('没有找到该雇员号!');
END;
/
2、用户自定义异常
create or replace procedure ex_test(spno number) is
--定义一个例外
myexp exception;
begin
update emp set sal = sal +1000 where empno = spno;
if sql%notfound then --表示sql语句没有执行更新操作
raise myexp;--触发异常
end if;
exception
when myexp then
dbms_output.put_line('没有更新任何用户');
end;
posted on 2014-05-02 22:15 Sunny_NUAA 阅读(165) 评论(0) 编辑 收藏 举报