被动触发的exception

 
没有数据搜索到  =  NO_DATA_FOUND  
违反唯一性约束   DUP_VAL_ON_INDEX   
---------------------------------------------------------------  
 ORACLE <wbr>Exception <wbr>异常对照ORACLE <wbr>Exception <wbr>异常对照
Exception  Oracle  Error  SQLCODE  Value    
ACCESS_INTO_NULL  
 ORA-06530  
 -6530  
   
CASE_NOT_FOUND  
 ORA-06592  
 -6592  
   
COLLECTION_IS_NULL  
 ORA-06531  
 -6531  
   
CURSOR_ALREADY_OPEN  
 ORA-06511  
 -6511  
   
DUP_VAL_ON_INDEX  
 ORA-00001  
 -1  
   
INVALID_CURSOR  
 ORA-01001  
 -1001  
   
INVALID_NUMBER  
 ORA-01722  
 -1722  
   
LOGIN_DENIED  
 ORA-01017  
 -1017  
   
NO_DATA_FOUND  
 ORA-01403  
 +100  
   
NOT_LOGGED_ON  
 ORA-01012  
 -1012  
   
PROGRAM_ERROR  
 ORA-06501  
 -6501  
   
ROWTYPE_MISMATCH  
 ORA-06504  
 -6504  
   
SELF_IS_NULL  
 ORA-30625  
 -30625  
   
STORAGE_ERROR  
 ORA-06500  
 -6500  
   
SUBSCRIPT_BEYOND_COUNT  
 ORA-06533  
 -6533  
   
SUBSCRIPT_OUTSIDE_LIMIT  
 ORA-06532  
 -6532  
   
SYS_INVALID_ROWID  
 ORA-01410  
 -1410  
   
TIMEOUT_ON_RESOURCE  
 ORA-00051  
 -51  
   
TOO_MANY_ROWS  
 ORA-01422  
 -1422  
   
VALUE_ERROR  
 ORA-06502  
 -6502  
   
ZERO_DIVIDE  
 ORA-01476  
 -1476  
   
 
Brief  descriptions  of  the  predefined  exceptions  follow:  
 
Exception  Raised  when  ...    
ACCESS_INTO_NULL  
 Your  program  attempts  to  assign  values  to  the  attributes  of  an  uninitialized  (atomically  null)  object.  
   
CASE_NOT_FOUND  
 None  of  the  choices  in  the  WHEN  clauses  of  a  CASE  statement  is  selected,  and  there  is  no  ELSE  clause.  
   
COLLECTION_IS_NULL  
 Your  program  attempts  to  apply  collection  methods  other  than  EXISTS  to  an  uninitialized  (atomically  null)  nested  table  or  varray,  or  the  program  attempts  to  assign  values  to  the  elements  of  an  uninitialized  nested  table  or  varray.  
   
CURSOR_ALREADY_OPEN  
 Your  program  attempts  to  open  an  already  open  cursor.  A  cursor  must  be  closed  before  it  can  be  reopened.  A  cursor  FOR  loop  automatically  opens  the  cursor  to  which  it  refers.  So,  your  program  cannot  open  that  cursor  inside  the  loop.  
   
DUP_VAL_ON_INDEX  
 Your  program  attempts  to  store  duplicate  values  in  a  database  column  that  is  constrained  by  a  unique  index.  
   
INVALID_CURSOR  
 Your  program  attempts  an  illegal  cursor  operation  such  as  closing  an  unopened  cursor.  
   
INVALID_NUMBER  
 In  a  SQL  statement,  the  conversion  of  a  character  string  into  a  number  fails  because  the  string  does  not  represent  a  valid  number.  (In  procedural  statements,  VALUE_ERROR  is  raised.)  This  exception  is  also  raised  when  the  LIMIT-clause  expression  in  a  bulk  FETCH  statement  does  not  evaluate  to  a  positive  number.  
   
LOGIN_DENIED  
 Your  program  attempts  to  log  on  to  Oracle  with  an  invalid  username  and/or  password.  
   
NO_DATA_FOUND  
 A  SELECT  INTO  statement  returns  no  rows,  or  your  program  references  a  deleted  element  in  a  nested  table  or  an  uninitialized  element  in  an  index-by  table.  SQL  aggregate  functions  such  as  AVG  and  SUM  always  return  a  value  or  a  null.  So,  a  SELECT  INTO  statement  that  calls  an  aggregate  function  never  raises  NO_DATA_FOUND.  The  FETCH  statement  is  expected  to  return  no  rows  eventually,  so  when  that  happens,  no  exception  is  raised.  
   
NOT_LOGGED_ON  
 Your  program  issues  a  database  call  without  being  connected  to  Oracle.  
   
PROGRAM_ERROR  
 PL/SQL  has  an  internal  problem.  
   
ROWTYPE_MISMATCH  
 The  host  cursor  variable  and  PL/SQL  cursor  variable  involved  in  an  assignment  have  incompatible  return  types.  For  example,  when  an  open  host  cursor  variable  is  passed  to  a  stored  subprogram,  the  return  types  of  the  actual  and  formal  parameters  must  be  compatible.  
   
SELF_IS_NULL  
 Your  program  attempts  to  call  a  MEMBER  method  on  a  null  instance.  That  is,  the  built-in  parameter  SELF  (which  is  always  the  first  parameter  passed  to  a  MEMBER  method)  is  null.  
   
STORAGE_ERROR  
 PL/SQL  runs  out  of  memory  or  memory  has  been  corrupted.  
   
SUBSCRIPT_BEYOND_COUNT  
 Your  program  references  a  nested  table  or  varray  element  using  an  index  number  larger  than  the  number  of  elements  in  the  collection.  
   
SUBSCRIPT_OUTSIDE_LIMIT  
 Your  program  references  a  nested  table  or  varray  element  using  an  index  number  (-1  for  example)  that  is  outside  the  legal  range.  
   
SYS_INVALID_ROWID  
 The  conversion  of  a  character  string  into  a  universal  rowid  fails  because  the  character  string  does  not  represent  a  valid  rowid.  
   
TIMEOUT_ON_RESOURCE  
 A  time-out  occurs  while  Oracle  is  waiting  for  a  resource.  
   
TOO_MANY_ROWS  
 A  SELECT  INTO  statement  returns  more  than  one  row.  
   
VALUE_ERROR  
 An  arithmetic,  conversion,  truncation,  or  size-constraint  error  occurs.  For  example,  when  your  program  selects  a  column  value  into  a  character  variable,  if  the  value  is  longer  than  the  declared  length  of  the  variable,  PL/SQL  aborts  the  assignment  and  raises  VALUE_ERROR.  In  procedural  statements,  VALUE_ERROR  is  raised  if  the  conversion  of  a  character  string  into  a  number  fails.  (In  SQL  statements,  INVALID_NUMBER  is  raised.)  
   
ZERO_DIVIDE  
 Your  program  attempts  to  divide  a  number  by  zero.  
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值