Oracle存儲過程異常信息的顯示

異常處理的寫法:

... 
EXCEPTION 
  WHEN OTHERS THEN 
    ROLLBACK; 
END ... 

 

但是出現異常無法獲知啥異常,因此代碼塊增加以下語句:

EXCEPTION 
    WHEN OTHERS THEN 
      --以下表示輸出buffer不受限制
      DBMS_OUTPUT.ENABLE(buffer_size => null);
      dbms_output.put_line(dbms_utility.format_error_backtrace);
      DBMS_OUTPUT.put_line('sqlcode : ' ||sqlcode); 
      DBMS_OUTPUT.put_line('sqlerrm : ' ||sqlerrm); 
      --以下截取前100個字符顯示
      DBMS_OUTPUT.put_line('sqlerrm : ' ||substr(sqlerrm,1,100));    ROLLBACK; 
END ... 


begin 
 produce_name;
end;

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章