在oracle中,可以利用“DBMS_OUTPUT”配合“put_line”打印方法獲取存儲過程異常信息,語法為“DBMS_OUTPUT.put_line(‘sqlerrm : ‘ ||sqlerrm);”;“put_line”打印方法用于換行輸出,sqlcode表示異常編號,sqlerrm表示異常的詳細信息,并且可以配合substr()方法來截取異常信息。
本教程操作環境:windows10系統、Oracle 12c版、Dell G3電腦。
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視頻教程》
? 版權聲明
文章版權歸作者所有,未經允許請勿轉載。
THE END
喜歡就支持一下吧
相關推薦