Oracle 12c R2 Error Codes and Solution Suggestions from ORA-01700 to ORA-01900
- ORA-01702: a view is not appropriate here
Cause: Among other possible causes, this message will be produced if an attempt was made to define an Editioning View over a view.
Action: An Editioning View may only be created over a base table.
Cause: The string literal is longer than 4000 characters.
Action: Use a string literal of at most 4000 characters. Longer values may only be entered using bind variables.
- ORA-01705: an outer join cannot be specified on a correlation column
- ORA-01706: user function result value was too large
- ORA-01707: missing LIST keyword
- ORA-01708: ACCESS or SESSION expected
- ORA-01709: program does not exist
- ORA-01710: missing OF keyword
- ORA-01711: duplicate privilege listed
- ORA-01712: you cannot grant a privilege which you do not have
- ORA-01713: GRANT OPTION does not exist for that privilege
- ORA-01714: error in execution of user function
- ORA-01715: UNIQUE may not be used with a cluster index
Cause: An attempt was made to create a cluster index with the UNIQUE attribute.
Action: Remove UNIQUE from the CREATE INDEX statement.
Cause: An attempt was made to create a cluster index using the NOSORT option.
Action: Remove NOSORT from the CREATE INDEX statement.
- ORA-01717: seccta: invalid access mode token passed
- ORA-01718: BY ACCESS | SESSION clause not allowed for NOAUDIT
Cause: Attempt to specify BY ACCESS | SESSION in a NOAUDIT statement.
Action: Remove BY ACCESS | SESSION.
Cause: An outer join appears in an or clause.
Action: If A and B are predicates, to get the effect of (A(+) or B), try (select where (A(+) and not B)) union all (select where (B)).
Cause: A grant was being performed on a view or a view was being replaced and the grant option was not present for an underlying object.
Action: Obtain the grant option on all underlying objects of the view or revoke existing grants on the view.
Cause: The USERENV(‘COMMITSCN’) function can only be used once in a transaction.
Action: Re-write the transactioin to use USERENV(‘COMMITSCN’) only once
Cause: The specified number was invalid.
Action: Specify a valid number.
Cause: Columns with zero length were not allowed.
Action: Correct the use of the column.
Cause: The specified number had an invalid range.
Action: Use a floating point precision that is in the correct precision.
Cause: The function USERENV(‘COMMITSCN’) is only allowed as a top-level expression in the VALUES clause of an INSERT statement, and on the right-hand side of an assignment in an UPDATE statement.
Action: Correct the use of the function.
- ORA-01726: a table is not appropriate here
- ORA-01727: numeric precision specifier is out of range (1 to 38)
- ORA-01728: numeric scale specifier is out of range (-84 to 127)
- ORA-01729: database link name expected
- ORA-01730: invalid number of column names specified
- ORA-01731: circular view definition encountered
- ORA-01732: data manipulation operation not legal on this view
- ORA-01733: virtual column not allowed here
- ORA-01734: illegal parameters – EXTENT MIN higher than EXTENT MAX
Cause: A wrong value is specified for the parameter.
Action: Correct the parameter and reissue the statement.
- ORA-01735: invalid ALTER TABLE option
- ORA-01736: [NOT] SUCCESSFUL expected
- ORA-01737: valid modes: [ROW] SHARE, [[SHARE] ROW] EXCLUSIVE, SHARE UPDATE
- ORA-01738: missing IN keyword
- ORA-01739: missing MODE keyword
- ORA-01740: missing double quote in identifier
- ORA-01741: illegal zero-length identifier
- ORA-01742: comment not terminated properly
Cause: The indicated comment or hint begun with the /* token did not have the terminating */.
Action: Properly terminate the comment or hint with a */.
Cause: The indexed function uses SYSDATE or the user environment.
Action: PL/SQL functions must be pure (RNDS, RNPS, WNDS, WNPS). SQL expressions must not use SYSDATE, USER, USERENV(), or anything else dependent on the session state. NLS-dependent functions are OK.
- ORA-01744: inappropriate INTO
- ORA-01745: invalid host/bind variable name
- ORA-01746: indicator variable not permitted here
- ORA-01747: invalid user.table.column, table.column, or column specification
- ORA-01748: only simple column names allowed here
- ORA-01749: you may not GRANT/REVOKE privileges to/from yourself
- ORA-01750: UPDATE/REFERENCES may only be REVOKEd from the whole table, not by column
- ORA-01751: Invalid dump undo option
Cause: An invalid option is specified in the ALTER DUMP UNDO command.
Action: Correct and reissue the command.
Cause: The deleted table had – no key-preserved tables, – more than one key-preserved table, or – the key-preserved table was an unmerged view.
Action: Redefine the view or delete it from the underlying base tables.
Cause: An attempt was made to create a table in a cluster and one of the table’s clustered columns is not compatible with the corresponding cluster key column.
Action: Make sure that all table columns specified in the CLUSTER clause of the CREATE TABLE statement are compatible with the corresponding columns of the cluster key, as documented. For example, the data type and the declared collation of a clustered table column must be the same as those of the corresponding cluster key column.
Cause: An attempt was made to add a LONG column to a table which already had a LONG column. Note that even if the LONG column currently in the table has already been marked unused, another LONG column may not be added until the unused columns are dropped.
Action: Remove the LONG column currently in the table by using the ALTER TABLE command.
Cause: Expecting an extent or block number but something else was specified.
Action: Correct the error and reissue the command.
Cause: Expecting an object number but something else was specified.
Action: Correct the error and reissue the command.
- ORA-01758: table must be empty to add mandatory (NOT NULL) column
- ORA-01759: user function is incorrectly defined
- ORA-01760: illegal argument for function
- ORA-01761: DML operation does not map to a unique table in the join
Cause: The primary table is the base table against which the update, insert or delete operation is finally being done. For delete either there is no primary table in the join query or there is more than one. For update or insert the columns specified map to more than one base table.
Action: Change the join specification.
- ORA-01762: vopdrv: view query block not in FROM
- ORA-01763: update or delete involves outer joined table
Cause: For deletes, the table being deleted from is outer joined to some other table. For updates, either the table being updated is outer- joined to some other table, or some table reachable from the primary table is being outer joined to a table not reachable from the primary table.
Action: Change the join specification.
Cause: A row of a join query table is being updated using a row of a table that is not guaranteed to have exactly one value for the row being updated.
Action: Change the join specification.
Cause: An attempt was made to rename the object with dotted object name.
Action: Do not specify username.tablename in query for table name.
- ORA-01766: dictionary table not allowed in this context
- ORA-01767: UPDATE … SET expression must be a subquery
- ORA-01768: number string too long
- ORA-01769: duplicate CLUSTER option specifications
Cause: During a CREATE of a clustered table, the user attempted to specify more than one CLUSTER option.
Action: Remove the extra CLUSTER option.
- ORA-01770: CLUSTER option not allowed in CREATE CLUSTER command
- ORA-01771: illegal option for a clustered table
Cause: During a CREATE or ALTER of a clustered table, the user attempted to enter one or more of the following options: INITRANS, MAXTRANS, PCTFREE, PCTUSED, STORAGE, TABLESPACE. These options may only be specified for the cluster itself.
Action: Remove the illegal option(s).
Cause: Expecting the value of LEVEL but something else was specified.
Action: Correct the error and reissue the command.
Cause: Column data types or virtual columns were specified in a SELECT statement used to create and load a table directly.
Action: Remove the column data types and virtual columns. The data types of the SELECT list expressions are automatically used as the column data types.
Cause: The same option for ALTER DUMP UNDO was specified twice.
Action: Remove the redundant options and reissue the command.
- ORA-01775: looping chain of synonyms
- ORA-01776: cannot modify more than one base table through a join view
Cause: Columns belonging to more than one underlying table were either inserted into or updated.
Action: Phrase the statement as two or more separate statements.
- ORA-01777: WITH GRANT OPTION not allowed in this system
- ORA-01778: maximum subquery nesting level exceeded
- ORA-01779: cannot modify a column which maps to a non key-preserved table
Cause: An attempt was made to insert or update columns of a join view which map to a non-key-preserved table.
Action: Modify the underlying base tables directly.
Cause: UNRECOVERABLE was specified in a CREATE TABLE statement without also specifying a populating subquery with an AS clause.
Action: Do not specify UNRECOVERABLE.
Cause: A CREATE CLUSTER, or clustered CREATE TABLE statement specified UNRECOVERABLE.
Action: Do not specify UNRECOVERABLE.
Cause: RECOVERABLE was specified more than once, UNRECOVERABLE was specified more than once, or both RECOVERABLE and UNRECOVERABLE were specified in a CREATE TABLE or CREATE INDEX or ALTER INDEX REBUILD statement.
Action: Remove all but one of the RECOVERABLE or UNRECOVERABLE clauses and reissue the statement.
Cause: A CREATE TABLE or CREATE INDEX statement specified RECOVERABLE when the database was running in NOARCHIVELOG mode. Since logs are not being archived, they will be overwritten and the object being created cannot be recovered from a backup taken before the object was created.
Action: Do not specify RECOVERABLE, or restart the database with media recovery enabled.
- ORA-01785: ORDER BY item must be the number of a SELECT-list expression
- ORA-01786: FOR UPDATE of this query expression is not allowed
- ORA-01787: only one clause allowed per query block
- ORA-01788: CONNECT BY clause required in this query block
- ORA-01789: query block has incorrect number of result columns
- ORA-01790: expression must have same datatype as corresponding expression
- ORA-01791: not a SELECTed expression
- ORA-01792: maximum number of columns in a table or view is 1000
Cause: An attempt was made to create a table or view with more than 1000 columns, or to add more columns to a table or view which pushes it over the maximum allowable limit of 1000. Note that unused columns in the table are counted toward the 1000 column limit.
Action: If the error is a result of a CREATE command, then reduce the number of columns in the command and resubmit. If the error is a result of an ALTER TABLE command, then there are two options: 1) If the table contained unused columns, remove them by executing ALTER TABLE DROP UNUSED COLUMNS before adding new columns; 2) Reduce the number of columns in the command and resubmit.
- ORA-01793: maximum number of index columns is 32
- ORA-01794: maximum number of cluster columns is 32
- ORA-01795: maximum number of expressions in a list is 1000
Cause: Number of expressions in the query exceeded than 1000. Note that unused column/expressions are also counted Maximum number of expressions that are allowed are 1000.
Action: Reduce the number of expressions in the list and resubmit.
- ORA-01796: this operator cannot be used with lists
- ORA-01797: this operator must be followed by ANY or ALL
- ORA-01798: missing EXCEPTION keyword
- ORA-01799: a column may not be outer-joined to a subquery
Cause: expression(+) relop (subquery) is not allowed.
Action: Either remove the (+) or make a view out of the subquery. In V6 and before, the (+) was just ignored in this case.
- ORA-01800: a literal in the date format was too large to process
- ORA-01801: date format is too long for internal buffer
- ORA-01802: Julian date is out of range
- ORA-01803: failure in getting date/time
- ORA-01804: failure to initialize timezone information
Cause: The timezone information file was not properly read.
Action: Please contact Oracle Customer Support.
Cause: The timezone files on client and server do not match. Operation can potentially result in incorrect results based on local timezone file.
Action: Please ensure client and server timezone versions are same.
- ORA-01810: format code appears twice
- ORA-01811: Julian date precludes use of day of year
- ORA-01812: year may only be specified once
- ORA-01813: hour may only be specified once
- ORA-01814: AM/PM conflicts with use of A.M./P.M.
- ORA-01815: BC/AD conflicts with use of B.C./A.D.
- ORA-01816: month may only be specified once
- ORA-01817: day of week may only be specified once
- ORA-01818: ‘HH24’ precludes use of meridian indicator
- ORA-01819: signed year precludes use of BC/AD
- ORA-01820: format code cannot appear in date input format
- ORA-01821: date format not recognized
- ORA-01822: era format code is not valid with this calendar
- ORA-01830: date format picture ends before converting entire input string
- ORA-01831: year conflicts with Julian date
- ORA-01832: day of year conflicts with Julian date
- ORA-01833: month conflicts with Julian date
- ORA-01834: day of month conflicts with Julian date
- ORA-01835: day of week conflicts with Julian date
- ORA-01836: hour conflicts with seconds in day
- ORA-01837: minutes of hour conflicts with seconds in day
- ORA-01838: seconds of minute conflicts with seconds in day
- 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
Cause: Illegal year entered
Action: Input year in the specified range
- ORA-01842: quarter must be between 1 and 4
- ORA-01843: not a valid month
- ORA-01844: week of year must be between 1 and 52
- ORA-01845: week of month must be between 1 and 5
- ORA-01846: not a valid day of the week
- ORA-01847: day of month must be between 1 and last day of month
- ORA-01848: day of year must be between 1 and 365 (366 for leap year)
- 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-01852: seconds must be between 0 and 59
- ORA-01853: seconds in day must be between 0 and 86399
- ORA-01854: julian date must be between 1 and 5373484
Cause: An invalid Julian date was entered.
Action: Enter a valid Julian date between 1 and 5373484.
- ORA-01855: AM/A.M. or PM/P.M. required
- ORA-01856: BC/B.C. or AD/A.D. required
- ORA-01857: not a valid time zone
- ORA-01858: a non-numeric character was found where a numeric was expected
Cause: The input data to be converted using a date format model was incorrect. The input data did not contain a number where a number was required by the format model.
Action: Fix the input data or the date format model to make sure the elements match in number and type. Then retry the operation.
Cause: The input data to be converted using a date format model was incorrect. The input data did not contain a letter where a letter was required by the format model.
Action: Fix the input data or the date format model to make sure the elements match in number and type. Then retry the operation.
Cause: Literals in the input must be the same length as literals in the format string (with the exception of leading whitespace). If the “FX” modifier has been toggled on, the literal must match exactly, with no extra whitespace.
Action: Correct the format string to match the literal.
Cause: When the FX and FM format codes are specified for an input date, then the number of digits must be exactly the number specified by the format code. For example, 9 will not match the format specifier DD but 09 will.
Action: Correct the input date or turn off the FX or FM format specifier in the format string.
Cause: The year is not supported for the current calendar.
Action: Please check the documentation to find out what years are supported for the current calendar.
Cause: Your calendar doesn’t extend to the specified date.
Action: Specify a date which is legal for this calendar.
Cause: Era input does not match a known era.
Action: Provide a valid era on input.
Cause: This is an internal error.
Action: Please contact Oracle Worldwide Support.
Cause: The character string you specified is not a valid interval.
Action: Please specify a valid interval.
Cause: The leading precision of the interval is too small to store the specified interval.
Action: Increase the leading precision of the interval or specify an interval with a smaller leading precision.
- ORA-01869: reserved for future use
- ORA-01870: the intervals or datetimes are not mutually comparable
Cause: The intervals or datetimes are not mutually comparable.
Action: Specify a pair of intervals or datetimes that are mutually comparable.
Cause: The number of seconds specified was greater than 59.
Action: Specify a value for seconds that is 59 or smaller.
Cause: The leading precision of the interval is too small to store the specified interval.
Action: Increase the leading precision of the interval or specify an interval with a smaller leading precision.
Cause: The time zone hour specified was not in the valid range.
Action: Specify a time zone hour between -15 and 15.
Cause: The time zone minute specified was not in the valid range.
Action: Specify a time zone minute between -59 and 59.
Cause: The specified year was not in range.
Action: Specify a year that is greater than or equal to -4713.
Cause: This is an internal error.
Action: Please contact Oracle Worldwide Support.
Cause: The specified field was not found in the datetime or interval.
Action: Make sure that the specified field is in the datetime or interval.
Cause: The specified hh25 field was not in the valid range.
Action: Specify an hh25 field between 0 and 24.
Cause: The specified fractional seconds were not in the valid range.
Action: Specify a value for fractional seconds between 0 and 999999999.
Cause: The region ID referenced an invalid region.
Action: Contact Oracle Support Services.
Cause: The specified region name was not found.
Action: Contact Oracle Support Services.
Cause: The region was changing state and the overlap flag was disabled.
Action: Please contact Oracle Customer Support.
Cause: An attempt was made to divide by zero.
Action: Avoid zero divisor.
Cause: The public synonym was the same as the Oracle-supplied schema name.
Action: Use either a different synonym or a different schema name.
Cause: An NLS error was detected.
Action: Look for additional error messages and take appropriate action. If there are no additional errors, call Oracle Worldwide Support.
Cause: Internal error.
Action: Please contact Oracle Worldwide Support.
Cause: While trying to truncate or round dates, extra data was found in the date format picture
Action: Check the syntax of the date format picture and retry.
Cause: keyword missing
Action: supply missing keyword