有三种类型的异常错误:
?
??? 1.?预定义?(?Predefined?)错误
?
??ORACLE预定义的异常情况大约有24个。对这种异常情况的处理,无需在程序中定义,由ORACLE自动将其引发。
?
??? 2.?非预定义?(?Predefined?)错误
?
?? 即其他标准的ORACLE错误。对这种异常情况的处理,需要用户在程序中定义,然后由ORACLE自动将其引发。
?
??? 3.?用户定义(User_define)?错误
?
?程序执行过程中,出现编程人员认为的非正常情况。对这种异常情况的处理,需要用户在程序中定义,然后显式地在程序中将其引发。
?
参考文章:http://www.cnblogs.com/soundcode/archive/2012/01/10/2318385.html
?
异常处理部分一般放在?PL/SQL?程序体的后半部,结构为:
?
?
EXCEPTION WHEN first_exception THEN <code to handle first exception > WHEN second_exception THEN <code to handle second exception > WHEN OTHERS THEN <code to handle others exception > END;
?
?
?
预定义说明的部分?ORACLE?异常错误
错误号 |
异常错误信息名称 |
说明 |
ORA-0001 |
Dup_val_on_index |
违反了唯一性限制 |
ORA-0051 |
Timeout-on-resource |
在等待资源时发生超时 |
ORA-0061 |
Transaction-backed-out |
由于发生死锁事务被撤消 |
ORA-1001 |
Invalid-CURSOR |
试图使用一个无效的游标 |
ORA-1012 |
Not-logged-on |
没有连接到ORACLE |
ORA-1017 |
Login-denied |
无效的用户名/口令 |
ORA-1403 |
No_data_found |
SELECT?INTO没有找到数据 |
ORA-1422 |
Too_many_rows |
SELECT?INTO?返回多行 |
ORA-1476 |
Zero-divide |
试图被零除 |
免责声明: 本文仅代表作者个人观点,与爱易网无关。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
|