捕获异常在抛出异常的写法
--------------------------------
EXCEPTION
--其他异常
WHEN OTHERS THEN
sql_code := SQLCODE;
sql_msg := SQLERRM;
DBMS_OUTPUT.PUT_LINE('err code:' || sql_code);
DBMS_OUTPUT.PUT_LINE('err msg:' || sql_msg);
--循环处理中报错的场合出力主键值
DBMS_OUTPUT.PUT_LINE('主键1:' || key1);
DBMS_OUTPUT.PUT_LINE('主键2:' || key2);
--异常在调用
RAISE;
--------------------------------
查不到数据时会发生异常,写法如下:
|
2
3
4
5
6
7
8
9
10
11
12
13
14
|
declare int_a number;
begin begin select a into int_a from taba where 1 = 2;
exception
when no_data_found or to_many_rows then null;
--或者写0件时的处理 end;
dbms_output.put_line(int_a);
end;
/ |
5521

被折叠的 条评论
为什么被折叠?



