PLSQL學習-【6異常】
java中異常處理後還可以回語句塊中,但是plsql不能,這感覺挺不好的。
15:31:19 SQL> r 1 declare 2 v_ename emp.ename%type; 3 begin 4 select ename into v_ename from emp where deptno = 10; 5 dbms_output.put_line(v_ename); 6* end; declare * ERROR at line 1: ORA-01422: exact fetch returns more than requested number of rows ORA-06512: at line 4
這裡出現錯誤程式就不能繼續往下執行,我們要處理異常的
declare v_ename emp.ename%type; begin select ename into v_ename from emp where deptno = 55; dbms_output.put_line(v_ename); exception when too_many_rows then dbms_output.put_line('return too many rows'); when no_data_found then dbms_outpORA-02292: integrity constraint (SCOTT.FK_DEPTNO) violated - child record found -2292 ut.put_line('no found'); end;
這些都是有名字的異常,還有些沒有名字的異常。但是有編號。
沒名字有號的異常:(oracle定義的異常)
declare e_dept exception; pragma exception_init(e_dept ,-2292); begin delete from dept where deptno = 10; commit; exception when e_dept then dbms_output.put_line(\'you can not delete this row\'); rollback; end;
有約束不能刪除,e_dept是我們定義的異常的名字,我們如何確定異常號的呢?
declare begin delete from dept where deptno = 10; exception when no_data_found then dbms_output.put_line('not found'); when others then dbms_output.put_line(sqlerrm); dbms_output.put_line(sqlcode); end; ORA-02292: integrity constraint (SCOTT.FK_DEPTNO) violated - child record found -2292
自定義異常:(非oracle異常)
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29990276/viewspace-1343627/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Java--異常的學習Java
- java學習筆記(異常)Java筆記
- 7_Oracle truncate異常恢復之plsql修復OracleSQL
- JAVA學習之異常處理Java
- 異常處理 - Go 學習記錄Go
- 學習使用mybatis框架初遇異常MyBatis框架
- Golang 學習筆記八 錯誤異常Golang筆記
- swoft 學習筆記之異常處理筆記
- Python學習之 異常處理詳解Python
- SpringMVC學習系列(10) 之 異常處理SpringMVC
- Python學習之路9-檔案和異常Python
- SpringMVC學習筆記10-異常處理SpringMVC筆記
- java異常練習題Java
- Python 3 學習筆記之——錯誤和異常Python筆記
- rust學習十、異常處理(錯誤處理)Rust
- Python入門學習之異常處理機制Python
- 6. PLSQL 編寫規範SQL
- 2024年6月16日 Python - 異常Python
- 重學c#系列——異常續[異常注意事項](七)C#
- kotlin學習筆記-異常好玩的list集合總結Kotlin筆記
- Python入門學習 之 永久儲存、異常處理Python
- 【機器學習】李宏毅——Anomaly Detection(異常檢測)機器學習
- Flutter6 異常、非同步、包和庫Flutter非同步
- 重學Java - 異常處理Java
- 傳智黑馬java基礎學習——day21(異常)Java
- 異常和異常呼叫鏈
- 異常篇——異常記錄
- 異常篇——異常處理
- centos6.x 安裝tensorflow異常處理CentOS
- 異常-異常的注意事項
- Java 異常(二) 自定義異常Java
- 吳恩達機器學習筆記 —— 16 異常點檢測吳恩達機器學習筆記
- C#學習筆記---異常捕獲和變數運算子C#筆記變數
- (十五)C++學習 | 強制型別轉換 異常處理C++型別
- 重學c#系列——異常(六)C#
- [轉載] Java異常處理習題Java
- 異常-編譯期異常和執行期異常的區別編譯
- 異常?
- 異常