This appendix contains a table of the SQLSTATE codes and the conditions and errors associated with them.
| Code | Condition | Oracle Error | 
|---|---|---|
| 
 00000  | 
 successful completion  | 
 ORA-00000  | 
| 
 01000  | 
 warning  | 
 
  | 
| 
 01001  | 
 cursor operation conflict  | 
 
  | 
| 
 01002  | 
 disconnect error  | 
 
  | 
| 
 01003  | 
 null value eliminated in set function  | 
 
  | 
| 
 01004  | 
 string data - right truncation  | 
 
  | 
| 
 01005  | 
 insufficient item descriptor areas  | 
 
  | 
| 
 01006  | 
 privilege not revoked  | 
 
  | 
| 
 01007  | 
 privilege not granted  | 
 
  | 
| 
 01008  | 
 implicit zero-bit padding  | 
 
  | 
| 
 01009  | 
 search condition too long for info schema  | 
 
  | 
| 
 0100A  | 
 query expression too long for info schema  | 
 
  | 
| 
 02000  | 
 no data  | 
 ORA-01095 ORA-01403  | 
| 
 07000  | 
 dynamic SQL error  | 
 
  | 
| 
 07001  | 
 using clause does not match parameter specs  | 
 
  | 
| 
 07002  | 
 using clause does not match target specs  | 
 
  | 
| 
 07003  | 
 cursor specification cannot be executed  | 
 
  | 
| 
 07004  | 
 using clause required for dynamic parameters  | 
 
  | 
| 
 07005  | 
 prepared statement not a cursor specification  | 
 
  | 
| 
 07006  | 
 restricted datatype attribute violation  | 
 
  | 
| 
 07007  | 
 using clause required for result fields  | 
 
  | 
| 
 07008  | 
 invalid descriptor count  | 
 SQL-02126  | 
| 
 07009  | 
 invalid descriptor index  | 
 
  | 
| 
 08000  | 
 connection exception  | 
 
  | 
| 
 08001  | 
 SQL client unable to establish SQL connection  | 
 
  | 
| 
 08002  | 
 connection name in use  | 
 
  | 
| 
 08003  | 
 connection does not exist  | 
 SQL-02121  | 
| 
 08004  | 
 SQL server rejected SQL connection  | 
 
  | 
| 
 08006  | 
 connection failure  | 
 
  | 
| 
 08007  | 
 transaction resolution unknown  | 
 
  | 
| 
 0A000  | 
 feature not supported  | 
 ORA-03000 .. 03099  | 
| 
 0A001  | 
 multiple server transactions  | 
 
  | 
| 
 21000  | 
 cardinality violation  | 
 ORA-01427 SQL-02112  | 
| 
 22000  | 
 data exception  | 
 
  | 
| 
 22001  | 
 string data - right truncation  | 
 ORA-01401 ORA-01406  | 
| 
 22002  | 
 null value - no indicator parameter  | 
 ORA-01405 SQL-02124  | 
| 
 22003  | 
 numeric value out of range  | 
 ORA-01426 ORA-01438 ORA-01455 ORA-01457  | 
| 
 22005  | 
 error in assignment  | 
 
  | 
| 
 22007  | 
 invalid date-time format  | 
 
  | 
| 
 22008  | 
 date-time field overflow  | 
 ORA-01800 .. 01899  | 
| 
 22009  | 
 invalid time zone displacement value  | 
 
  | 
| 
 22011  | 
 substring error  | 
 
  | 
| 
 22012  | 
 division by zero  | 
 ORA-01476  | 
| 
 22015  | 
 interval field overflow  | 
 
  | 
| 
 22018  | 
 invalid character value for cast  | 
 
  | 
| 
 22019  | 
 invalid escape character  | 
 ORA-00911 ORA-01425  | 
| 
 22021  | 
 character not in repertoire  | 
 
  | 
| 
 22022  | 
 indicator overflow  | 
 ORA-01411  | 
| 
 22023  | 
 invalid parameter value  | 
 ORA-01025 ORA-01488 ORA-04000 .. 04019  | 
| 
 22024  | 
 unterminated C string  | 
 ORA-01479 .. 01480  | 
| 
 22025  | 
 invalid escape sequence  | 
 ORA-01424  | 
| 
 22026  | 
 string data - length mismatch  | 
 
  | 
| 
 22027  | 
 trim error  | 
 
  | 
| 
 23000  | 
 integrity constraint violation  | 
 ORA-00001 ORA-02290 .. 02299  | 
| 
 24000  | 
 invalid cursor state  | 
 ORA-01001 .. 01003 ORA-01410 ORA-08006 SQL-02114 SQL-02117 SQL-02118 SQL-02122  | 
| 
 25000  | 
 invalid transaction state  | 
 
  | 
| 
 26000  | 
 invalid SQL statement name  | 
 
  | 
| 
 27000  | 
 triggered data change violation  | 
 
  | 
| 
 28000  | 
 invalid authorization specification  | 
 
  | 
| 
 2A000  | 
 direct SQL syntax error or access rule violation  | 
 
  | 
| 
 2B000  | 
 dependent privilege descriptors still exist  | 
 
  | 
| 
 2C000  | 
 invalid character set name  | 
 
  | 
| 
 2D000  | 
 invalid transaction termination  | 
 
  | 
| 
 2E000  | 
 invalid connection name  | 
 
  | 
| 
 33000  | 
 invalid SQL descriptor name  | 
 
  | 
| 
 34000  | 
 invalid cursor name  | 
 
  | 
| 
 35000  | 
 invalid condition number  | 
 
  | 
| 
 37000  | 
 dynamic SQL syntax error or access rule violation  | 
 
  | 
| 
 3C000  | 
 ambiguous cursor name  | 
 
  | 
| 
 3D000  | 
 invalid catalog name  | 
 
  | 
| 
 3F000  | 
 invalid schema name  | 
 
  | 
| 
 40000  | 
 transaction rollback  | 
 ORA-02091 .. 02092  | 
| 
 40001  | 
 serialization failure  | 
 
  | 
| 
 40002  | 
 integrity constraint violation  | 
 
  | 
| 
 40003  | 
 statement completion unknown  | 
 
  | 
| 
 42000  | 
 syntax error or access rule violation  | 
 ORA-00022 ORA-00251 ORA-00900 .. 00999 ORA-01031 ORA-01490 .. 01493 ORA-01700 .. 01799 ORA-01900 .. 02099 ORA-02140 .. 02289 ORA-02420 .. 02424 ORA-02450 .. 02499 ORA-03276 .. 03299 ORA-04040 .. 04059 ORA-04070 .. 04099  | 
| 
 44000  | 
 with check option violation  | 
 ORA-01402  | 
| 
 60000  | 
 system errors  | 
 ORA-00370 .. 00429 ORA-00600 .. 00899 ORA-06430 .. 06449 ORA-07200 .. 07999 ORA-09700 .. 09999  | 
| 
 61000  | 
 resource error  | 
 ORA-00018 .. 00035 ORA-00050 .. 00068 ORA-02376 .. 02399 ORA-04020 .. 04039  | 
| 
 62000  | 
 path name server and detached process errors  | 
 ORA-00100 .. 00120 ORA-00440 .. 00569  | 
| 
 63000  | 
 Oracle*XA and two-task interface errors  | 
 ORA-00150 .. 00159 SQL-02128 ORA-02700 .. 02899 ORA-03100 .. 03199 ORA-06200 .. 06249  | 
| 
 64000  | 
 control file, database file, and redo file errors; archival and media recovery errors  | 
 ORA-00200 .. 00369 ORA-01100 .. 01250  | 
| 
 65000  | 
 PL/SQL errors  | 
 ORA-06500 .. 06599  | 
| 
 66000  | 
 SQL*Net driver errors  | 
 ORA-06000 .. 06149 ORA-06250 .. 06429 ORA-06600 .. 06999 ORA-12100 .. 12299 ORA-12500 .. 12599  | 
| 
 67000  | 
 licensing errors  | 
 ORA-00430 .. 00439  | 
| 
 69000  | 
 SQL*Connect errors  | 
 ORA-00570 .. 00599 ORA-07000 .. 07199  | 
| 
 72000  | 
 SQL execute phase errors  | 
 ORA-01000 .. 01099 ORA-01400 .. 01489 ORA-01495 .. 01499 ORA-01500 .. 01699 ORA-02400 .. 02419 ORA-02425 .. 02449 ORA-04060 .. 04069 ORA-08000 .. 08190 ORA-12000 .. 12019 ORA-12300 .. 12499 ORA-12700 .. 21999  | 
| 
 82100  | 
 out of memory (could not allocate)  | 
 SQL-02100  | 
| 
 82101  | 
 inconsistent cursor cache: unit cursor/global cursor mismatch  | 
 SQL-02101  | 
| 
 82102  | 
 inconsistent cursor cache: no global cursor entry  | 
 SQL-02102  | 
| 
 82103  | 
 inconsistent cursor cache: out of range cursor cache reference  | 
 SQL-02103  | 
| 
 82104  | 
 inconsistent host cache: no cursor cache available  | 
 SQL-02104  | 
| 
 82105  | 
 inconsistent cursor cache: global cursor not found  | 
 SQL-02105  | 
| 
 82106  | 
 inconsistent cursor cache: invalid Oracle cursor number  | 
 SQL-02106  | 
| 
 82107  | 
 program too old for runtime library  | 
 SQL-02107  | 
| 
 82108  | 
 invalid descriptor passed to runtime library  | 
 SQL-02108  | 
| 
 82109  | 
 inconsistent host cache: host reference is out of range  | 
 SQL-02109  | 
| 
 82110  | 
 inconsistent host cache: invalid host cache entry type  | 
 SQL-02110  | 
| 
 82111  | 
 heap consistency error  | 
 SQL-02111  | 
| 
 82112  | 
 unable to open message file  | 
 SQL-02113  | 
| 
 82113  | 
 code generation internal consistency failed  | 
 SQL-02115  | 
| 
 82114  | 
 reentrant code generator gave invalid context  | 
 SQL-02116  | 
| 
 82115  | 
 invalid hstdef argument  | 
 SQL-02119  | 
| 
 82116  | 
 first and second arguments to sqlrcn both null  | 
 SQL-02120  | 
| 
 82117  | 
 invalid OPEN or PREPARE for this connection  | 
 SQL-02122  | 
| 
 82118  | 
 application context not found  | 
 SQL-02123  | 
| 
 82119  | 
 connect error; can't get error text  | 
 SQL-02125  | 
| 
 82120  | 
 precompiler/SQLLIB version mismatch.  | 
 SQL-02127  | 
| 
 82121  | 
 FETCHed number of bytes is odd  | 
 SQL-02129  | 
| 
 82122  | 
 EXEC TOOLS interface is not available  | 
 SQL-02130  | 
| 
 90000  | 
 debug events  | 
 ORA-10000 .. 10999  | 
| 
 99999  | 
 catch all  | 
 all others  | 
| 
 HZ000  | 
 remote database access  | 
 
  |