首頁  >  文章  >  資料庫  >  oracle怎麼取得過程異常訊息

oracle怎麼取得過程異常訊息

WBOY
WBOY原創
2022-06-10 10:15:373218瀏覽

在oracle中,可以利用「DBMS_OUTPUT」來配合「put_line」列印方法取得預存程序異常訊息,語法為「DBMS_OUTPUT.put_line('sqlerrm : ' ||sqlerrm);」;「put_line」列印方法用於換行輸出,sqlcode表示異常編號,sqlerrm表示異常的詳細信息,可以配合substr()方法來截取異常信息。

oracle怎麼取得過程異常訊息

本教學操作環境:windows10系統、Oracle 12c版、Dell G3電腦。

oracle怎麼取得程序異常資訊

oracle預存程​​序異常資訊的顯示

#之前寫入預存程序時,異常處理寫法是:

oracle怎麼取得過程異常訊息

這種寫法當預存程序拋出異常時,我們不知道其到底拋出了哪種異常(比如列寬度不夠大而在插入資料時拋異常),可以按如下方式顯示異常訊息

EXCEPTION
WHEN OTHERS THEN
DBMS_OUTPUT.put_line('sqlcode : ' ||sqlcode);
DBMS_OUTPUT.put_line('sqlerrm : ' ||sqlerrm);
ROLLBACK;
END ...

sqlcode是異常編號,sqlerrm是異常的詳細信息,如果異常訊息太多,可以截取一段顯示,如

DBMS_OUTPUT.put_line('sqlerrm : ' ||substr(sqlerrm,1,100));

是截取前100個字元顯示出來。

推薦教學:《Oracle影片教學

以上是oracle怎麼取得過程異常訊息的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn