Oracle異常 其四

2021-10-09 23:07:54 字數 2077 閱讀 7796

1、zero_divide:零被整除(7/0)

例:```

begin

dbms.output_put.line('7/0')

exception

when zero_divide then dbms.output_put.line('零不能被整除')

end;

```2、no_data_found:沒找到資料

例:```

declare

v_sno student.sno%type;

begin

select sno into v_sno from student where sname=&sname;

dbms.output_put.line('v_sno');

exception

when no_data_found then dbms.output_put.line('沒找到資料!')

end;

```3、to_many_rows:匹配多條資料

例:```

declare

v_sno student.sno%type;

begin

select sno into v_sno from student where sno=&sno;

exception

when too_many_rows then dbms_output.put_line('select into語句匹配了多行');

when others then dbms_output.put_line('其他例外');

end;

```

1、記錄已存在 ,違反唯一限制:ora-00001

insert into student values(『1111』,『張小龍』,『女』,17,『04』);

2、違反外來鍵約束:ora-02291

insert into student values(『1111b』,『張小龍』,『女』,17,『06』);

3、引用的資料不存在

insert into student(sno,sname,s***,sage,deptno) values(『1111b』,『張小龍』,『女』,17,『06』);

4、輸入的資料不夠:ora-00947

insert into student values(『1111b』,『張小龍』,『女』,17);

5、值過多:ora-00913

insert into student values(『1111b』,『張小龍』,『女』,17,『06』,『sadad』);

例1、刪除資料產生異常

declare

err_delereferences exception;

pragma exception_init(err_delereferences,-02292);

begin

delete from course where cno=&cno;

exception

when err_delereferences then dbms_output.put_line('被其它資料引用');

when others then dbms_output.put_line('其他');

end;

2、子查詢時產生的異常(沒獲得資料)

declare

v_grade score.grade%type;

err_subnodata exception;

pragma exception_init(err_subnodata,-01427);

begin

select grade

from score where sno in(select sno from student where sname='安然') ;

exception

when err_subnodata then dbms_output.put_line('子查詢時沒獲得資料');

when others then dbms_output.put_line('其他');

end;

C 語言經典100例 其四

輸入某年某月某日,判斷這一天是這一年的第幾天?程式設計沒有捷徑。talk is cheap.show me the code 以3月5日為例,應該先把前兩個月的加起來,然後再加上5天即本年的第幾天,特殊情況,閏年且輸入月份大於3時需考慮多加一天。ps 建議先自行思考後再繼續往後看。已經上傳到gith...

shell指令碼從入門到複雜 其四 陣列

陣列中可以存放多個值。bash shell 只支援一維陣列 不支援多維陣列 陣列元素的下標從0開始。shell 陣列用括號來表示,元素用 空格 符號分割開,語法格式如下 array name value1 valuen 讀取陣列 vi test.sh bin bash array1 a b c d ...

軟體測試基礎知識的整理(其四)

本篇主要就是記錄一下怎麼展開測試工作,但是這個肯定是最官方的。不是適合所有的工作環境,只能作為乙個參考,讓新人不至於一臉懵逼的就開始工作。測試需求的主要是用來指明被測物件中有什麼需要測試。通過對對開發需求的細化和分解,形成可測試的內容。測試需求應全部覆蓋已定義的業務流程,以及功能和非功能方面的需求 ...