非預定義異常

2021-08-01 13:03:16 字數 980 閱讀 1286

非預定義異常

1非預定義是除了預定義異常和自定義異常外,還有一些屬於程式本身邏輯錯誤的異常.

2orale為這些非預定義異常定義了錯誤**,沒有定義異常名

3處理這些異常需使用者自己設定異常名

語法

exception_name exception

pragma exception_init(exception_name ,oracle_error_number)

exception_name :使用者定義的異常名

oracle_error_number:oracle的錯誤號,可通過錯誤**獲取

如ora-06530,那麼錯誤號就是-6530

舉例;

先獲取錯誤**

根據錯誤**ora-02291我們來定義個預定義異常

declare

fk_check exception;–預定義異常

pragma exception_init(fk_check ,-2291);–讓異常名和異常號連線起來

begin

insert into student2 values(『2』,』lilib』,18,』2』);

exception –異常處理

when fk_check then

dbms_output.put_line(『插入的語句違反外來鍵約束』);

oracle 非預定義異常

oracle中,異常有預定義異常,非預定義異常,使用者自定義異常。預定義異常有異常 異常名稱。非預定義異常,有錯誤 使用者必須事先知道異常 沒有名稱。必須使用者自己定義。非預定義異常 1 在定義部分,定義異常名稱。異常名稱 exception 如 fk exception exception 2 在...

ORACLE預定義異常

start 命名的系統異常 產生原因 access into null 未定義物件 case not found case 中若未包含相應的 when 並且沒有設定 else 時 collection is null 集合元素未初始化 curser already open 游標已經開啟 dup v...

oracle 預定義異常

1,access into null 沒有初始化物件異常 create type emp type as object id number 10 物件 建立 name varchar2 50 declare emp emp type emp type 1,begin emp.name 王瑤 exce...