Oracle ORA- and PL/SQL PLS- error reference
Plain-language causes and fixes for 251 common Oracle errors (221 ORA-, 30 PLS-). One page per error, written for developers who need the fix, not the manual.
251 errors
- ORA-00001 Unique constraint violated
- ORA-00018 Maximum number of sessions exceeded
- ORA-00020 Maximum number of processes exceeded
- ORA-00028 Your session has been killed
- ORA-00031 Session marked for kill
- ORA-00054 Resource busy and acquire with NOWAIT specified or timeout expired
- ORA-00060 Deadlock detected while waiting for resource
- ORA-00257 Archiver error. Connect internal only, until freed
- ORA-00600 Internal error code
- ORA-00900 Invalid SQL statement
- ORA-00902 Invalid datatype
- ORA-00903 Invalid table name
- ORA-00904 Invalid identifier
- ORA-00905 Missing keyword
- ORA-00906 Missing left parenthesis
- ORA-00907 Missing right parenthesis
- ORA-00908 Missing NULL keyword
- ORA-00910 Specified length too long for its datatype
- ORA-00911 Invalid character
- ORA-00913 Too many values
- ORA-00917 Missing comma
- ORA-00918 Column ambiguously defined
- ORA-00920 Invalid relational operator
- ORA-00921 Unexpected end of SQL command
- ORA-00922 Missing or invalid option
- ORA-00923 FROM keyword not found where expected
- ORA-00925 Missing INTO keyword
- ORA-00926 Missing VALUES keyword
- ORA-00928 Missing SELECT keyword
- ORA-00932 Inconsistent datatypes
- ORA-00933 SQL command not properly ended
- ORA-00934 Group function is not allowed here
- ORA-00935 Group function is nested too deeply
- ORA-00936 Missing expression
- ORA-00937 Not a single-group group function
- ORA-00938 Not enough arguments for function
- ORA-00939 Too many arguments for function
- ORA-00942 Table or view does not exist
- ORA-00946 Missing TO keyword
- ORA-00947 Not enough values
- ORA-00949 Illegal reference to remote database
- ORA-00955 Name is already used by an existing object
- ORA-00957 Duplicate column name
- ORA-00960 Ambiguous column naming in select list
- ORA-00971 Missing SET keyword
- ORA-00972 Identifier is too long
- ORA-00979 Not a GROUP BY expression
- ORA-00980 Synonym translation is no longer valid
- ORA-00984 Column not allowed here
- ORA-00997 Illegal use of LONG datatype
- ORA-01000 Maximum open cursors exceeded
- ORA-01002 Fetch out of sequence
- ORA-01008 Not all variables bound
- ORA-01012 Not logged on
- ORA-01017 Invalid username/password; logon denied
- ORA-01031 Insufficient privileges
- ORA-01033 ORACLE initialization or shutdown in progress
- ORA-01034 ORACLE not available
- ORA-01039 Insufficient privileges on underlying objects of the view
- ORA-01045 User lacks CREATE SESSION privilege; logon denied
- ORA-01089 Immediate shutdown or close in progress
- ORA-01157 Cannot identify/lock data file
- ORA-01400 Cannot insert NULL into (column)
- ORA-01401 Inserted value too large for column
- ORA-01403 No data found
- ORA-01407 Cannot update (column) to NULL
- ORA-01408 Such column list already indexed
- ORA-01410 Invalid ROWID
- ORA-01417 A table may be outer joined to at most one other table
- ORA-01418 Specified index does not exist
- ORA-01422 Exact fetch returns more than requested number of rows
- ORA-01427 Single-row subquery returns more than one row
- ORA-01430 Column being added already exists in table
- ORA-01436 CONNECT BY loop in user data
- ORA-01438 Value larger than specified precision allowed for this column
- ORA-01439 Column to be modified must be empty to change datatype
- ORA-01440 Column to be modified must be empty to decrease precision or scale
- ORA-01441 Cannot decrease column length because some value is too big
- ORA-01445 Cannot select ROWID from, or sample, a join view without a key-preserved table
- ORA-01450 Maximum key length exceeded
- ORA-01451 Column to be modified to NULL cannot be modified to NULL
- ORA-01452 Cannot CREATE UNIQUE INDEX; duplicate keys found
- ORA-01453 SET TRANSACTION must be first statement of transaction
- ORA-01456 May not perform insert/delete/update operation inside a READ ONLY transaction
- ORA-01468 A predicate may reference only one outer-joined table
- ORA-01471 Cannot create a synonym with same name as object
- ORA-01476 Divisor is equal to zero
- ORA-01481 Invalid number format model
- ORA-01489 Result of string concatenation is too long
- ORA-01502 Index or partition of such index is in unusable state
- ORA-01536 Space quota exceeded for tablespace
- ORA-01555 Snapshot too old
- ORA-01578 ORACLE data block corrupted
- ORA-01652 Unable to extend temp segment
- ORA-01653 Unable to extend table in tablespace
- ORA-01654 Unable to extend index in tablespace
- ORA-01720 Grant option does not exist
- ORA-01722 Invalid number
- ORA-01727 Numeric precision specifier is out of range (1 to 38)
- ORA-01732 Data manipulation operation not legal on this view
- ORA-01735 Invalid ALTER TABLE option
- ORA-01741 Illegal zero-length identifier
- ORA-01747 Invalid user.table.column, table.column, or column specification
- ORA-01756 Quoted string not properly terminated
- ORA-01779 Cannot modify a column which maps to a non key-preserved table
- ORA-01790 Expression must have same datatype as corresponding expression
- ORA-01791 Not a SELECTed expression
- ORA-01795 Maximum number of expressions in a list is 1000
- ORA-01799 A column may not be outer-joined to a subquery
- ORA-01821 Date format not recognized
- ORA-01830 Date format picture ends before converting entire input string
- ORA-01839 Date not valid for month specified
- ORA-01840 Input value not long enough for date format
- ORA-01841 (Full) year must be between -4713 and +9999, and not be 0
- ORA-01843 Not a valid month
- ORA-01847 Day of month must be between 1 and last day of month
- ORA-01849 Hour must be between 1 and 12
- ORA-01850 Hour must be between 0 and 23
- ORA-01851 Minutes must be between 0 and 59
- ORA-01858 A non-numeric character was found where a numeric was expected
- ORA-01861 Literal does not match format string
- ORA-01873 The leading precision of the interval is too small
- ORA-01882 Timezone region not found
- ORA-01918 User does not exist
- ORA-01920 User name conflicts with another user or role name
- ORA-01940 Cannot drop a user that is currently connected
- ORA-01950 No privileges on tablespace
- ORA-02049 Timeout: distributed transaction waiting for lock
- ORA-02063 Preceding line from (dblink)
- ORA-02149 Specified partition does not exist
- ORA-02260 Table can have only one primary key
- ORA-02264 Name already used by an existing constraint
- ORA-02266 Unique/primary keys in table referenced by enabled foreign keys
- ORA-02270 No matching unique or primary key for this column-list
- ORA-02275 Such a referential constraint already exists in the table
- ORA-02287 Sequence number not allowed here
- ORA-02289 Sequence does not exist
- ORA-02290 Check constraint violated
- ORA-02291 Integrity constraint violated - parent key not found
- ORA-02292 Integrity constraint violated - child record found
- ORA-02296 Cannot enable (constraint) - null values found
- ORA-02298 Cannot validate - parent keys not found
- ORA-02303 Cannot drop or replace a type with type or table dependents
- ORA-02391 Exceeded simultaneous SESSIONS_PER_USER limit
- ORA-02396 Exceeded maximum idle time, please connect again
- ORA-02429 Cannot drop index used for enforcement of unique/primary key
- ORA-02437 Cannot validate (primary key) - primary key violated
- ORA-02449 Unique/primary keys in table referenced by foreign keys
- ORA-03113 End-of-file on communication channel
- ORA-03114 Not connected to ORACLE
- ORA-03135 Connection lost contact
- ORA-04021 Timeout occurred while waiting to lock object
- ORA-04030 Out of process memory when trying to allocate
- ORA-04031 Unable to allocate bytes of shared memory
- ORA-04043 Object does not exist
- ORA-04061 Existing state of (package) has been invalidated
- ORA-04063 (Object) has errors
- ORA-04065 Not executed, altered or dropped stored procedure
- ORA-04068 Existing state of packages has been discarded
- ORA-04080 Trigger does not exist
- ORA-04082 NEW or OLD references not allowed in table level triggers
- ORA-04084 Cannot change NEW values for this trigger type
- ORA-04088 Error during execution of trigger
- ORA-04091 Table is mutating, trigger/function may not see it
- ORA-04092 Cannot COMMIT or ROLLBACK in a trigger
- ORA-04098 Trigger is invalid and failed re-validation
- ORA-06501 PL/SQL: program error
- ORA-06502 PL/SQL: numeric or value error
- ORA-06503 PL/SQL: Function returned without value
- ORA-06504 PL/SQL: Return types of Result Set variables or query do not match
- ORA-06508 PL/SQL: could not find program unit being called
- ORA-06511 PL/SQL: cursor already open
- ORA-06512 At line (error stack location)
- ORA-06519 Active autonomous transaction detected and rolled back
- ORA-06530 Reference to uninitialized composite
- ORA-06531 Reference to uninitialized collection
- ORA-06532 Subscript outside of limit
- ORA-06533 Subscript beyond count
- ORA-06535 Statement string in EXECUTE IMMEDIATE is NULL or 0 length
- ORA-06550 Line N, column M: PL/SQL compilation error
- ORA-06576 Not a valid function or procedure name
- ORA-08002 Sequence CURRVAL is not yet defined in this session
- ORA-08004 Sequence NEXTVAL exceeds MAXVALUE and cannot be instantiated
- ORA-08177 Can't serialize access for this transaction
- ORA-12154 TNS: could not resolve the connect identifier specified
- ORA-12170 TNS: Connect timeout occurred
- ORA-12505 TNS: listener does not currently know of SID
- ORA-12514 TNS: listener does not currently know of service requested
- ORA-12516 TNS: listener could not find available handler with matching protocol stack
- ORA-12519 TNS: no appropriate service handler found
- ORA-12528 TNS: listener: all appropriate instances are blocking new connections
- ORA-12537 TNS: connection closed
- ORA-12541 TNS: no listener
- ORA-12543 TNS: destination host unreachable
- ORA-12545 Connect failed because target host or object does not exist
- ORA-12560 TNS: protocol adapter error
- ORA-12801 Error signaled in parallel query server
- ORA-12838 Cannot read/modify an object after modifying it in parallel
- ORA-12899 Value too large for column
- ORA-14400 Inserted partition key does not map to any partition
- ORA-14402 Updating partition key column would cause a partition change
- ORA-14450 Attempt to access a transactional temp table already in use
- ORA-14551 Cannot perform a DML operation inside a query
- ORA-14552 Cannot perform a DDL, commit or rollback inside a query or DML
- ORA-19011 Character string buffer too small
- ORA-20000 User-defined application error (ORA-20000..-20999)
- ORA-22813 Operand value exceeds system limits
- ORA-22835 Buffer too small for CLOB to CHAR or BLOB to RAW conversion
- ORA-24247 Network access denied by access control list (ACL)
- ORA-24381 Error(s) in array DML
- ORA-28000 The account is locked
- ORA-28001 The password has expired
- ORA-28002 The password will expire within N days
- ORA-28040 No matching authentication protocol
- ORA-29273 HTTP request failed
- ORA-29280 Invalid directory path
- ORA-29283 Invalid file operation
- ORA-30926 Unable to get a stable set of rows in the source tables
- ORA-31011 XML parsing failed
- ORA-38104 Columns referenced in the ON Clause cannot be updated
- ORA-40441 JSON syntax error
- PLS-00049 Bad bind variable
- PLS-00103 Encountered the symbol X when expecting one of the following
- PLS-00201 Identifier must be declared
- PLS-00221 Is not a procedure or is undefined
- PLS-00222 No function with name exists in this scope
- PLS-00231 Function may not be used in SQL
- PLS-00302 Component must be declared
- PLS-00306 Wrong number or types of arguments in call
- PLS-00307 Too many declarations match this call
- PLS-00313 Not declared in this scope
- PLS-00320 The declaration of the type of this expression is incomplete or malformed
- PLS-00323 Subprogram is declared in a package specification and must be defined in the package body
- PLS-00328 A subprogram body must be defined for the forward declaration
- PLS-00357 Table, view or sequence reference not allowed in this context
- PLS-00363 Expression cannot be used as an assignment target
- PLS-00371 At most one declaration for (name) is permitted
- PLS-00382 Expression is of wrong type
- PLS-00386 Type mismatch found between FETCH cursor and INTO variables
- PLS-00394 Wrong number of values in the INTO list of a FETCH statement
- PLS-00402 Alias required in SELECT list of cursor to avoid duplicate column names
- PLS-00403 Expression cannot be used as an INTO-target of a SELECT/FETCH statement
- PLS-00405 Subquery not allowed in this context
- PLS-00428 An INTO clause is expected in this SELECT statement
- PLS-00435 DML statement without BULK In-BIND cannot be used inside FORALL
- PLS-00452 Subprogram violates its associated pragma
- PLS-00487 Invalid reference to variable
- PLS-00488 (name) must be a type
- PLS-00642 Local collection types not allowed in SQL statements
- PLS-00904 Insufficient privilege to access object
- PLS-00905 Object is invalid