plsql 异常
异常处理
EXCEPTION
WHEN ... THEN
WHEN ... THEN
WHEN OTHERS THEN ...
declare
begin
EXCEPTION
WHEN ... THEN
WHEN ... THEN
WHEN OTHERS THEN ..
end;
create type xtype as object(name varchar(20));
declare
x xtype;
begin
x.name:='aaa';
exception
when ACCESS_INTO_NULL then dbms_putput.put_line('init x first');
end;
declare
x number(9);
begin
case
when x>200 then
dbms_out.put_line('');
end case;
exception
when case_not_found then dbms_putput.put_line('init x first');
自定义异常
-----------own exception-------------
declare
emp_notfound_exception exception;
begin
update myemp set sal=sal+100 where empno=&empno;
if sql%notfound
emp_notfound_exception;
else
dbms_output.put_line('ok');
end if;
exception
when emp_notfound_exception then
dbms_output.put_line('not emp found');
when others then
null;
end;