簡體   English   中英

oracle pl / sql將異常類型傳遞給函數

[英]oracle pl/sql pass exception type to function

我試圖找出是否有一種方法來獲取異常類型,而無需在when子句中顯式實現所有預定義的Exception

我寫了一個發送郵件的功能。 我在PL / SQL過程的when others子句中調用此函數,有沒有辦法將類型作為varchar傳遞?
使Exception消息也作為參數傳遞將是令人興奮的。

問候

在Oracle文檔中搜索: DBMS_UTILITY.FORMAT_ERROR_STACK

有幾種方法,我使用SQLERRM

EXCEPTION
  WHEN CANNOTPROCEED THEN


      ORA_ERROR:=SQLERRM;

      ROLLBACK;
insert into LOG_TABLE (LOG_ERROR) Values();
commit;

正如Mat在其評論中所建議的那樣,您可以簡單地使用變量SQLCODESQLERRM來檢索Exception。 它本身不檢索Exception的類型,但是它確實提供了足夠的信息來解決問題。 Oracle文檔

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM