程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> Oracle數據庫 >> 關於Oracle數據庫 >> Oracle SQLCODE/SQLERRM

Oracle SQLCODE/SQLERRM

編輯:關於Oracle數據庫

  Oracle內置函數SQLCODE和SQLERRM是特別用在OTHERS處理器中,分別用來返回Oracle的錯誤代碼和錯誤消息。

  OTHERS處理器應該是異常處理塊中的最後的異常處理器,因為它是用來捕獲除了別的異常處理器處理以外的所有的Oracle異常,所以在程序的最外層使用一個OTHERS處理器的話,將可以確保所有的錯誤都會被檢測到。

  在一個內在的異常中,SQLCODE返回Oracle錯誤的序號,而SQLERRM返回的是相應的錯誤消息,錯誤消息首先顯示的是錯誤代碼。SQLCODE返回的是負數,除非Oracle的錯誤為“ORA-01403:NO DATA FOUND”(譯:ORA-01403:未找到數據),當Oracle錯誤為“ORA-01403:NO DATA FOUND”時,其對應的SQLCODE為+100。對於用戶自定義的異常,SQLCODE返回的是+1,而SQLERRM返回的是User-Defined Exception。

  一個Oracle的錯誤消息最多只能包含512個字節的錯誤代碼。如果沒有異常被觸發,則SQLCODE返回0,SQLERRM返回“ORA-0000:normal, successful completion”。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved