儲存過程常見異常

2021-08-31 02:50:59 字數 984 閱讀 3936

access_into_null 未定義物件

case_not_found case 中若未包含相應的 when ,並且沒有設定

else 時

collection_is_null 集合元素未初始化

curser_already_open 游標已經開啟

dup_val_on_index 唯一索引對應的列上有重複的值

invalid_cursor 在不合法的游標上進行操作

invalid_number 內嵌的 sql 語句不能將字元轉換為數字

no_data_found 使用 select into 未返回行,或應用索引表未初始化的

too_many_rows 執行 select into 時,結果集超過一行

zero_divide 除數為 0

subscript_beyond_count 元素下標超過巢狀表或 varray 的最大值

subscript_outside_limit 使用巢狀表或 varray 時,將下標指定為負數

value_error 賦值時,變數長度不足以容納實際資料

login_denied pl/sql 應用程式連線到 oracle 資料庫時,提供了不

正確的使用者名稱或密碼

not_logged_on pl/sql 應用程式在沒有連線 oralce 資料庫的情況下

訪問資料

program_error pl/sql 內部問題,可能需要重灌資料字典& pl./sql

系統包

rowtype_mismatch 宿主游標變數與 pl/sql 游標變數的返回型別不相容

self_is_null 使用物件型別時,在 null 物件上呼叫物件方法

storage_error 執行 pl/sql 時,超出記憶體空間

sys_invalid_id 無效的 rowid 字串

timeout_on_resource oracle 在等待資源時超時

儲存過程捕捉異常

begin try 開始捕捉異常 begin transaction 開始事務 exec procname procparam 執行儲存過程 報錯,則錯誤資訊會 捉 commit 提交事務 endtry 結束捕捉異常 begin catch 有異常 獲 if trancount 0 判斷有沒有事務 ...

儲存過程 異常處理continue

drop table if exists t2 create table t2 s1 int,primary key s1 engine innodb delete from t2 drop procedure if exists p23 delimiter create procedure p23...

mysql儲存過程異常處理

定義條件和處理程式是事先定義程式執行過程中可能遇到的問題。並且可以在處理程式中定 決這些問題的辦法。這種方式可以提前 可能出現的問題,並提出解決辦法。這樣可以增強程式處理問題的能力,避免程式異常停止。mysql中都是通過declare關鍵字來定義條件和處理程式。本小節中將詳細講解如何定義條件和處理程...