Oracle的PL_SQL的異常處理

來源:互聯網
上載者:User

標籤:time   聲明   read   ini   timeout   sel   --   開啟   acl   

--什麼是異常--異常是在PL/SQL運行過程中有可能出現的錯誤。--執行異常的語句exception  when [異常] when    --異常輸出資訊。--Oracle的預定義異常CASE_NOT_FOUND  ora-06592 --case語句中,when子句沒有匹配的條件,而且沒有else語句,會觸發該異常。NO_DATA_FOUND ORA-01403 --select..into語句沒有返回記錄,觸發該異常TOO_MANY_ROWS ORA-01422--select..into語句返回記錄多於一條,觸發該異常DUP_VAL_ON_INDEX ORA-00001--表中唯一索引所對應的列上出現重複值時,引發該異常VALUE_ERROR ORA-06502--賦值時,如果變數長度不夠,引發該異常ZERO_DIVIDE ORA-01476--除數為零時引發的異常STORAGE_ERROR ORA-06500--內容溢出或破壞引發該異常TIMEOUT_ON_RESOURCE ORA-00051--等待資源逾時引發該異常CURSOR_ALREADY_OPEN ORA-06511--開啟一個已經開啟的遊標引發該異常--非預定義異常1、聲明一個異常的名稱。2、把這個異常名稱和異常的編號相關聯。--執行個體declarev_t varchar2(5);v_tt varchar2(3);tt_8899_exp exception;--聲明異常pragma exception_init(tt_8899_exp,-8899);--exception_init(異常名稱,異常代碼)beginv_t:=‘1111‘;case v_t   when ‘222‘ then     dbms_output.put_line(‘555‘);    end case;exception  when CASE_NOT_FOUND then    dbms_output.put_line(‘字串超標‘);    dbms_output.put_line(SQLERRM);--輸出異常資訊    dbms_output.put_line(SQLCODE);--輸出異常的代碼 rollback;       end;--自訂異常declarev_t number(10);tt_8899_exp exception;--聲明異常pragma exception_init(tt_8899_exp,-8899);--exception_init(異常名稱,異常代碼)begin       v_t:=-1;         if v_t<0 then         raise tt_8899_exp;--啟動自訂異常tt_8899_exp         end if;exception  when CASE_NOT_FOUND then    dbms_output.put_line(SQLERRM);--輸出異常資訊    dbms_output.put_line(SQLCODE);--輸出異常的代碼    when  tt_8899_exp then         dbms_output.put_line(‘字串超標‘);      dbms_output.put_line(SQLERRM);--輸出異常資訊    dbms_output.put_line(SQLCODE);--輸出異常的代碼 rollback;       end;

 

Oracle的PL_SQL的異常處理

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.