PL/SQL——编程——例外处理

时间:2014-05-05 23:45:21   收藏:0   阅读:427

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;

PL/SQL——编程——例外处理,布布扣,bubuko.com

评论(0
© 2014 mamicode.com 版权所有 京ICP备13008772号-2  联系我们:gaon5@hotmail.com
迷上了代码!