0
点赞
收藏
分享

微信扫一扫

PLSQL-异常

【预定义异常】

declare

v_sal employees.salary % type;

begin

select salary into v_sal from employees where employee_id = 1001;
dbms_output.put_line(v_sal);

exception

when no_data_found then dbms_output.put_line('查无此人');

end;

【非预定义异常】

declare
--定义异常
temp_exception exception;
--将其定义好的异常情况,与标准的oracle错误联系起来,使用exception_int语句
pragma exception_init(temp_exception,-2292);

begin

delete from employees where employee_id = 100;

exception
--处理异常
when temp_exception
then dbms_output.put_line('违反完整性约束');

end;

【自定义异常】

declare

no_result exception;

begin

update employees set salary = salary +100 where employee_id = 1001;

--使用隐式游标,抛出自定义异常
if sql % notfound
then raise no_result;
end if;

exception

when no_result
then dbms_output.put_line('工资太高了');

end;


举报

相关推荐

0 条评论