73 ORA-01500 to ORA-02098

ORA-01500: failure in getting date/time

Cause: During create database or alter tablespace, there was a failure in getting the date and time.

Action: Contact your customer support representative.

ORA-01501: CREATE DATABASE failed

Cause: An error occurred during create database

Action: See accompanying errors.

ORA-01502: index 'string.string' or partition of such index is in unusable state

Cause: An attempt has been made to access an index or index partition that has been marked unusable by a direct load or by a DDL operation

Action: DROP the specified index, or REBUILD the specified index, or REBUILD the unusable index partition

ORA-01503: CREATE CONTROLFILE failed

Cause: An error occurred during CREATE CONTROLFILE

Action: See accompanying errors.

ORA-01504: database name 'string' does not match initialization parameter DB_NAME 'string'

Cause: The database name during create or mount did not match the name specified for the DB_NAME initialization parameter.

Action: Correct or omit one of the two names.

ORA-01505: error in adding log files

Cause: During create or alter database, error(s) occurred when adding new log files.

Action: Check error stack for detailed error information.

ORA-01506: missing or illegal database name

Cause: No db_name INIT.ORA parameter was specified.

Action: The database name must be given in the db_name INIT.ORA parameter.

ORA-01507: database not mounted

Cause: A command was attempted that requires the database to be mounted.

Action: If you are using the ALTER DATABASE statement via the SQLDBA startup command, specify the MOUNT option to startup; else if you are directly doing an ALTER DATABASE DISMOUNT, do nothing; else specify the MOUNT option to ALTER DATABASE. If you are doing a backup or copy, you must first mount the desired database. If you are doing a FLASHBACK DATABASE, you must first mount the desired database.

ORA-01508: cannot create database; error in file 'string' at line string

Cause: CREATE DATABASE was unable to process the specified file.

Action: Check the offending line in the specified file.

ORA-01509: specified name 'string' does not match actual 'string'

Cause: The database name specified in the ALTER DATABASE statement does not match the name of the database that is currently mounted.

Action: Correct the spelling of the database name or DISMOUNT the mounted database.

ORA-01510: error in deleting log files

Cause: During ALTER DATABASE, an error occurred while dropping log files.

Action: Check the error stack for detailed error information.

ORA-01511: error in renaming log/data files

Cause: An error occurred during the ALTER DATABASE RENAME FILE command.

Action: Check the error stack for detailed error information.

ORA-01512: error renaming log file string - new file string not found

Cause: An attempt to change a log file's name in the control file failed because no file was found with the new name.

Action: Make sure that the log file has been properly renamed by the operating system and retry.

ORA-01513: invalid current time returned by operating system

Cause: The operating system returned a time that was not between 1988 and 2121.

Action: Correct the time kept by the operating system.

ORA-01514: error in log specification: no such log

Cause: A log file name, or list of member names, did not correspond to an existing log.

Action: Specify an existing log file.

ORA-01515: error dropping log group string: no such log

Cause: ALTER DATABASE is attempting to drop a log file which is not known to the database control file.

Action: Specify the name of an existing log file.

ORA-01516: nonexistent log file, data file, or temporary file "string" in the current container

Cause: An attempt was made to use ALTER DATABASE to rename a log file, data file, or temporary file; or to change attributes of a data file or temporary file (for example, resize, autoextend, online or offline); or to re-create or move a data file. The attempt failed because the specified file is not known to the database's control file or the current container or is not of a type supported by the request.

Action: Specify the name or number of an existing file of the correct type, as appropriate. Check the relevant V$ table for a list of possible files.

ORA-01517: log member: 'string'

Cause: Used to print member names

Action: See top level error for information

ORA-01518: CREATE DATABASE must specify more than one log file

Cause: Only one log file was specified in the CREATE DATABASE statement.

Action: Specify at least two log files.

ORA-01519: error while processing file 'string' near line string

Cause: The CREATE DATABASE statement encountered a problem while processing the specified file. The specified file is invalid.

Action: Validate the file specified in the message and retry the CREATE DATABASE statement. If the problem persists, contact Oracle Support Services.

ORA-01520: number of data files to add (string) exceeds limit of string

Cause: CREATE TABLESPACE statement specifies more files than is permitted for this database.

Action: Use fewer files or re-create the database with a larger value of MAXDATAFILES.

ORA-01521: error in adding data files

Cause: During CREATE or ALTER TABLESPACE, an error was detected while adding data files.

Action: Check the error stack for detailed error information.

ORA-01522: file 'string' to be renamed does not exist

Cause: During ALTER TABLESPACE RENAME, a file to be renamed was not found in the database control file.

Action: Specify the correct file name.

ORA-01523: cannot rename data file to 'string' - file already part of database

Cause: During ALTER DATABASE RENAME or ALTER TABLESPACE RENAME, the new name of a file is already present in the control file.

Action: Rename the file to a name not already being used as part of the database.

ORA-01524: cannot create data file as 'string' - file already part of database

Cause: During ALTER DATABASE CREATE DATAFILE, the new name of a file is already present in the control file.

Action: Create the file as a name not already being used as part of the database.

ORA-01525: error in renaming data files

Cause: An error occurred when renaming files as part of ALTER TABLESPACE.

Action: Check the error stack for detailed information. All files are renamed except for those mentioned in the error stack.

ORA-01526: error in opening file 'string'

Cause: CREATE DATABASE was not able to open the specified file.

Action: Make sure your CREATE DATABASE command only contains references to files and file locations for which the OS user and the Oracle Installer group (usually oinstall) has permissions for reading and writing.

ORA-01527: error while reading file

Cause: CREATE DATABASE was not able to read the specified file. This is probably due to a system installation error.

Action: Retry your system installation procedure or contact your customer support representative.

ORA-01528: EOF while processing SQL statement

Cause: CREATE DATABASE unexpectedly hit EOF while reading the specified file. The sql.bsq file is bad.

Action: Retry your system installation procedure or contact your customer support representative.

ORA-01529: error closing file 'string'

Cause: CREATE DATABASE was not able to close the specified file.

Action: Retry the system installation procedure or contact Oracle Support Services.

ORA-01530: a database already mounted by the instance

Cause: During ALTER DATABASE MOUNT, an attempt is being made to mount a database on an instance in which a database is or has previously been mounted.

Action: If you wish to mount the database, shutdown the instance and then startup the instance and retry the operation.

ORA-01531: a database already open by the instance

Cause: During ALTER DATABASE, an attempt was made to open a database on an instance for which there is already an open database.

Action: If you wish to open a new database on the instance, first shutdown the instance and then startup the instance and retry the operation.

ORA-01532: cannot create database; instance being started elsewhere

Cause: During CREATE DATABASE, another user appears to be simultaneously altering the instance.

Action: Make sure no one else is simultaneously altering the instance. If no one is, contact your customer support representative; otherwise, retry the operation.

ORA-01533: cannot rename file 'string'; file does not belong to tablespace

Cause: During ALTER TABLESPACE RENAME, a file to be renamed was not found in the argument tablespace.

Action: Specify the correct file name or the correct tablespace name.

ORA-01534: rollback segment 'string' doesn't exist

Cause: During ALTER or DROP ROLLBACK SEGMENT, the specified rollback segment name is unknown.

Action: Use the correct rollback segment name.

ORA-01535: rollback segment 'string' already exists or given name has prefix _SYSSMU

Cause: Specified rollback segment already exists or given name starts with _SYSSMU.

Action: Use a different name. Note that _SYSSMU is an illegal prefix to an RBU segment.

ORA-01536: space quota exceeded for tablespace 'string'

Cause: The space quota for the segment owner in the tablespace has been exhausted and the operation attempted the creation of a new segment extent in the tablespace.

Action: Either drop unnecessary objects in the tablespace to reclaim space or have a privileged user increase the quota on this tablespace for the segment owner.

ORA-01537: cannot add file 'string' - file already part of database

Cause: During CREATE or ALTER TABLESPACE, a file being added is already part of the database.

Action: Use a different file name.

ORA-01538: failed to acquire any rollback segment

Cause: Failed to acquire any rollback segment during startup in shared mode

Action: Startup in exclusive mode to create one more public segment or specify available private segments in the INIT.ORA parameter rollback_segments_required, then startup in shared mode

ORA-01539: tablespace 'string' is not online

Cause: Failed to either make a tablespace read-only or offline because it was not online. A tablespace must be online before it could become read-only or offline normal.

Action: Check the status of the tablespace. Use IMMEDIATE or TEMPORARY options to force all files offline. Bring the tablespace online before making it read-only.

ORA-01540: tablespace 'string' is not offline

Cause: Failed to bring a tablespace online because it is not offline

Action: Check the status of the tablespace

ORA-01541: system tablespace cannot be brought offline; shut down if necessary

Cause: Tried to bring system tablespace offline

Action: Shutdown if necessary to do recovery

ORA-01542: tablespace 'string' is offline, cannot allocate space in it

Cause: Tried to allocate space in an offline tablespace

Action: Bring the tablespace online or create the object in other tablespace

ORA-01543: tablespace 'string' already exists

Cause: Tried to create a tablespace which already exists

Action: Use a different name for the new tablespace

ORA-01544: cannot drop system rollback segment

Cause: Tried to drop system rollback segment

Action: None

ORA-01545: rollback segment 'string' specified not available

Cause: Either: 1) An attempt was made to bring a rollback segment online that is unavailable during startup; for example, the rollback segment is in an offline tablespace. 2) An attempt was made to bring a rollback segment online that is already online. This is because the rollback segment is specified twice in the ROLLBACK_SEGMENTS parameter in the initialization parameter file or the rollback segment is already online by another instance. 3) An attempt was made to drop a rollback segment that is currently online. 4) An attempt was made to alter a rollback segment that is currently online to use unlimited extents. 5) An attempt was made to online a rollback segment that is corrupted. This is because the rollback is specified in _corrupted_rollback_segments parameter in initialization parameter file.

Action: Either: 1) Make the rollback segment available; for example, bring an offline tablespace online. 2) Remove the name from the ROLLBACK_SEGMENTS parameter if the name is a duplicate or if another instance has already acquired the rollback segment. 3) Bring the rollback segment offline first. This may involve waiting for the active transactions to finish, or, if the rollback segment needs recovery, discover which errors are holding up the rolling back of the transactions and take appropriate actions. 4) Same as 3). 5) Remove the name from the _corrupted_rollback_segments parameter.

ORA-01546: tablespace contains active rollback segment 'string'

Cause: Tried to make a tablespace that contains active rollback segment(s) offline or read-only

Action: Shutdown instances that use the active rollback segments in the tablespace and then make the tablespace offline or read-only

ORA-01547: warning: RECOVER succeeded but OPEN RESETLOGS would get error below

Cause: Media recovery with one of the incomplete recovery options ended without error. However, if the ALTER DATABASE OPEN RESETLOGS command were attempted now, it would fail with the specified error. The most likely cause of this error is forgetting to restore one or more datafiles from a sufficiently old backup before executing the incomplete recovery.

Action: Rerun the incomplete media recovery using different datafile backups, a different control file, or different stop criteria.

ORA-01548: active rollback segment 'string' found, terminate dropping tablespace

Cause: Tried to drop a tablespace that contains active rollback segment(s)

Action: Shutdown instances that use the active rollback segments in the tablespace and then drop the tablespace

ORA-01549: tablespace not empty, use INCLUDING CONTENTS option

Cause: Tried to drop a non-empty tablespace

Action: To drop all the objects in the tablespace, use the INCLUDING CONTENTS option

ORA-01550: cannot drop system tablespace

Cause: Tried to drop system tablespace

Action: None

ORA-01551: extended rollback segment, pinned blocks released

Cause: Doing recursive extent of rollback segment, trapped internally by the system

Action: None

ORA-01552: cannot use system rollback segment for non-system tablespace 'string'

Cause: Tried to use the system rollback segment for operations involving non-system tablespace. If this is a clone database then this will happen when attempting any data modification outside of the system tablespace. Only the system rollback segment can be online in a clone database.

Action: Create one or more private/public segment(s), shutdown and then startup again. May need to modify the INIT.ORA parameter rollback_segments to acquire private rollback segment. If this is a clone database being used for tablespace point in time recovery then this operation is not allowed. If the non-system tablespace has AUTO segment space management, then create an undo tablespace.

ORA-01553: MAXEXTENTS must be no smaller than the string extents currently allocated

Cause: The number of extents allocated is greater than the MAXEXTENTS specified.

Action: Specify a larger MAXEXTENTS value.

ORA-01554: transaction concurrency limit reached reason:string params:string, string

Cause: Too many concurrent transactions

Action: Shutdown the system, modify the INIT.ORA parameters transactions, rollback_segments or rollback_segments_required, then startup again.

ORA-01555: snapshot too old: rollback segment number string with name "string" too small

Cause: rollback records needed by a reader for consistent read are overwritten by other writers

Action: If in Automatic Undo Management mode, increase undo_retention setting. Otherwise, use larger rollback segments

ORA-01556: MINEXTENTS for rollback segment must be greater than 1

Cause: Specified MINEXTENTS of less than 2 for rollback segment

Action: Specify larger MINEXTENTS

ORA-01557: rollback segment extents must be at least string blocks

Cause: Specified extent of less than minimum size for rollback segment

Action: Specify larger extents

ORA-01558: out of transaction ID's in rollback segment string

Cause: All the available transaction id's have been used

Action: Shutdown the instance and restart using other rollback segment(s), then drop the rollback segment that has no more transaction id's.

ORA-01559: MAXEXTENTS for rollback segment must be greater than 1

Cause: Specified MAXEXTENTS of less than 2 for rollback segment

Action: Specify larger MAXEXTENTS

ORA-01560: LIKE pattern contains partial or illegal character

Cause: like pattern is not formed correctly

Action: make sure like pattern is specified correctly

ORA-01561: failed to remove all objects in the tablespace specified

Cause: Failed to remove all objects when dropping a tablespace

Action: Retry the drop tablespace until all objects are dropped

ORA-01562: failed to extend rollback segment number string

Cause: Failure occurred when trying to extend rollback segment

Action: This is normally followed by another error message that caused the failure. You may take the rollback segment offline to perform maintenance. Use the alter rollback segment offline command to take the rollback segment offline.

ORA-01563: rollback segment is PUBLIC, need to use the keyword PUBLIC

Cause: Did not use the keyword PUBLIC to identified public rollback segment

Action: Use the keyword PUBLIC when identifying public rollback segment

ORA-01564: rollback segment is not PUBLIC

Cause: The rollback segment segment identified is not public

Action: Do not use the keyword PUBLIC when identifying private rollback segment

ORA-01565: error in identifying file 'string'

Cause: An error occurred while trying to identify a file.

Action: Check the error stack for detailed information.

ORA-01566: file specified more than once in ALTER DATABASE

Cause: The list of files supplied to the command contained at least one duplicate.

Action: Remove the duplicate file specification and retry.

ORA-01567: dropping log string would leave less than 2 log files for instance string (thread string)

Cause: Dropping all the logs specified would leave fewer than the required two log files per enabled thread.

Action: Either drop fewer logs or disable the thread before deleting the logs. It may be possible to clear the log rather than drop it.

ORA-01568: cannot set space quota on PUBLIC

Cause: Trying to set space quota on a tablespace for PUBLIC.

Action: If trying to grant system-wide or tablespace-wide space priviledges to all users, use GRANT RESOURCE [ON tablespace] TO PUBLIC.

ORA-01569: data file too small for system dictionary tables

Cause: The datafile specified during creation of the database is too small to hold the system dictionary tables.

Action: Recreate the database by specifying a larger file or more files.

ORA-01570: MINEXTENTS must be no larger than the string extents currently allocated

Cause: The number of extents allocated is smaller than the MINEXTENTS specified.

Action: Specify a smaller MINEXTENTS value.

ORA-01571: redo version string incompatible with ORACLE version string

Cause: This software version can not read the current redo logs, and either crash recovery is required or there are offline database files that need media recovery. If a file name is listed then it needs media recovery.

Action: Shutdown and startup using the compatible software. Do any required media recovery, and open the database. Shutdown and then startup using current software. If the file is going to be dropped then take it offline with the DROP option to skip this check.

ORA-01572: rollback segment 'string' cannot be brought online, string extents exceeded

Cause: The number of extents in the rollback segment exceeds the hard limit. It cannot be brought online for writing.

Action: Drop and recreate the rollback segment.

ORA-01573: shutting down instance, no further change allowed

Cause: Some process tries to make changes while the db is being shutdown

Action: None

ORA-01574: maximum number of concurrent transactions exceeded

Cause: the limit on the number of concurrent transactions has been hit

Action: shutdown the system, increase the INIT.ORA parameter 'transactions' , and then restart the system.

ORA-01575: timeout waiting for space management resource

Cause: failed to acquire necessary resource to do space management.

Action: Retry the operation.

ORA-01576: The instance string is not enabled

Cause: The thread associated with instance is not enabled.

Action: Enable the thread associated with the instance using ALTER DATABASE ENABLE INSTANCE command.

ORA-01577: cannot add log file 'string' - file already part of database

Cause: During CREATE or ALTER DATABASE, a file being added is already part of the database.

Action: Use a different file name.

ORA-01578: ORACLE data block corrupted (file # string, block # string)

Cause: The data block indicated was corrupt. This was a physical corruption, also called a media corruption. The cause is unknown but is most likely external to the database. If ORA-26040 is also signaled, the corruption is due to NOLOGGING or UNRECOVERABLE operations.

Action: The general method to repair a media corrupt block is to restore a backup and recover the backup. For databases in ARCHIVELOG mode, use block media recovery or media recovery. In some situations, you can also drop the segment and re-create it. For example, you can drop an index and re-create the index.

ORA-01579: write error occurred during recovery

Cause: A write error occurred during recovery

Action: Consult trace files for the nature of the write error, and correct error.

ORA-01580: error creating control backup file string

Cause: An operating system error occurred while attempting to create a control file backup.

Action: Check the error stack for more detailed information

ORA-01581: attempt to use rollback segment (string) new extent (string) which is being allocated

Cause: Undo generated to extend a rollback segment run out of current undo block space and is attempting to write into the new extent which has not been completely allocated.

Action: The rollback segment extending will be rollbacked by the system, no more extension will be possible untill the next extent is freed up by rolling back or committing other transactions.

ORA-01582: unable to open control file for backup

Cause: An operating system error occurred while attempting to open a control file for backup.

Action: Check the error stack for more detailed information

ORA-01583: unable to get block size of control file to be backed up

Cause: An operating system error occurred while attempting to get the block size of a control file for backup.

Action: Check the error stack for more detailed information

ORA-01584: unable to get file size of control file to be backed up

Cause: An operating system error occurred while attempting to get the file size of a control file for backup.

Action: Check the error stack for more detailed information

ORA-01585: error identifying backup file string

Cause: An operating system error occurred when attempting to identify the file to be used for control file backup.

Action: Check the error stack for more detailed information

ORA-01586: database must be mounted EXCLUSIVE and not open for this operation

Cause: Attempting to DROP DATABASE when the database is not mounted EXCLUSIVE.

Action: Mount the database in EXCLUSIVE mode.

ORA-01587: error during control file backup file copy

ORA-01588: must use RESETLOGS option for database open

Cause: An earlier attempt to open the database with the RESETLOGS option did not complete, or recovery was done with a control file backup, or a FLASHBACK DATABASE was done.

Action: Use the RESETLOGS option when opening the database.

ORA-01589: must use RESETLOGS or NORESETLOGS option for database open

Cause: Either incomplete or backup control file recovery has been performed. After these types of recovery you must specify either the RESETLOGS option or the NORESETLOGS option to open your database.

Action: Specify the appropriate option.

ORA-01590: number of segment free list (string) exceeds maximum of string

Cause: storage parameter FREELIST GROUPS is too large.

Action: Reduce storage parameters FREELIST GROUPS

ORA-01591: lock held by in-doubt distributed transaction string

Cause: Trying to access resource that is locked by a dead two-phase commit transaction that is in prepared state.

Action: DBA should query the pending_trans$ and related tables, and attempt to repair network connection(s) to coordinator and commit point. If timely repair is not possible, DBA should contact DBA at commit point if known or end user for correct outcome, or use heuristic default if given to issue a heuristic commit or abort command to finalize the local portion of the distributed transaction.

ORA-01592: error converting Version 7 rollback segment (string) to Oracle 8 format

Cause: Look at the accompanying internal error; Version 7 database may not have shutdown cleanly.

Action: Investigate the internal error; may have to reload the Version 7 Investigate the internal error; may have to reload the Version 7 database (from backup) and shutdown the database cleanly.

ORA-01593: rollback segment optimal size (string blks) is smaller than the computed initial size (string blks)

Cause: Specified OPTIMAL size is smaller than the cumulative size of the initial extents during create rollback segment.

Action: Specify a larger OPTIMAL size.

ORA-01594: attempt to wrap into rollback segment (string) extent (string) which is being freed

Cause: Undo generated to free a rollback segment extent is attempting to write into the same extent due to small extents and/or too many extents to free

Action: The rollback segment shrinking will be rollbacked by the system; increase the optimal size of the rollback segment.

ORA-01595: error freeing extent (string) of rollback segment (string))

Cause: Some error occurred while freeing inactive rollback segment extents.

Action: Investigate the accompanying error.

ORA-01596: cannot specify system in string parameter

Cause: The system rollback segment is specified in the INIT.ORA parameter referred to in the error message

Action: change the INIT.ORA parameter

ORA-01597: cannot alter system rollback segment online or offline

Cause: Tried to online or offline the system rollback segment

Action: None

ORA-01598: rollback segment 'string' is not online

Cause: Could have been taken offline before by DBA or cleaned up by SMON.

Action: Check the status of rollback segment in undo$ or dba_rollback_segs to make sure the rollback segment is actually online.

ORA-01599: failed to acquire rollback segment (string), cache space is full

Cause: the amount statically allocated is not enough based on max_rollback_segments parameter.

Action: For now take another rollback segment offline or increase the parameter max_rollback_segments

ORA-01600: at most one "string" in clause "string" of string

Cause: The INIT.ORA parameter was mis-specified.

Action: Correct the INIT.ORA parameter and restart the instance.

ORA-01601: illegal bucket size in clause "string" of string

Cause: The bucket size was invalid for this parameter.

Action: Correct the INIT.ORA parameter and restart the instance.

ORA-01602: The PDB string is in the wrong state for a role change to string.

Cause: A role change was requested for a pluggable database (PDB) that was either already in the requested state or, was not a member of a Data Guard configuration.

Action: Request the correct role change or add the PDB into a Data Guard configuration.

ORA-01603: illegal grouping size in clause "string" of string

Cause: The grouping size was invalid for this parameter.

Action: Correct the INIT.ORA parameter and restart the instance.

ORA-01604: illegal number range in clause "string" of string

Cause: The number range was invalid for this parameter.

Action: Correct the INIT.ORA parameter and restart the instance.

ORA-01605: missing numbers in clause "string" of string

Cause: The numbers were missing for this parameter.

Action: Correct the INIT.ORA parameter and restart the instance.

ORA-01606: parameter not identical to that of another mounted instance

Cause: A parameter was different on two instances.

Action: Modify the initialization parameter and restart.

ORA-01607: cannot add logfile to the specified instance

Cause: The limit on the number of instances supported by the control file has been reached.

Action: Use an instance already known to the control file. Alternatively resize the thread, the checkpoint progress or both record sections of the control file.

ORA-01608: cannot bring rollback segment 'string' online, its status is (string)

Cause: Could have been brought online before by DBA or left as a result of process crash.

Action: Check the status of rollback segment in undo$ or dba_rollback_segs

ORA-01609: log string is the current log for thread string - cannot drop members

Cause: A member of the current log for a thread cannot be dropped.

Action: If the thread is opened, request a log switch by the instance that is using it. If it is not open, disable the thread, manually archive the log, or clear it.

ORA-01610: recovery using the BACKUP CONTROLFILE option must be done

Cause: Either an earlier database recovery session specified BACKUP CONTROLFILE, or the control file was recreated with the RESETLOGS option, or the control file being used is a backup control file. After that only BACKUP CONTROLFILE recovery is allowed and it must be followed by a log reset at the next database open.

Action: Perform recovery using the BACKUP CONTROLFILE option.

ORA-01611: thread number string is invalid - must be between 1 and string

Cause: A thread number in a command is greater than the number of threads supported by the control file.

Action: Use a thread number that is valid, or resize the thread record and/or checkpoint progress record sections of the control file.

ORA-01612: instance string (thread string) is already enabled

Cause: An attempt was made to enable a thread that is already enabled.

Action: Either use this thread or enable another thread.

ORA-01613: instance string (thread string) only has string logs - at least 2 logs required to enable.

Cause: The thread cannot be enabled because it only has two online log files associated with it.

Action: Add logs to the thread or pick another thread to enable

ORA-01614: instance string (thread string) is busy - cannot enable

Cause: The mount enqueue for the thread could not be acquired when attempting to enable the thread. This probably means that another process has already started enabling this thread.

Action: Wait and try again, or find another thread to enable.

ORA-01615: instance string (thread string) is mounted - cannot disable

Cause: Some instance, possibly this one, has allocated the thread for its use. The thread can not be disabled while in use.

Action: Shut the instance down cleanly using the thread.

ORA-01616: instance string (thread string) is open - cannot disable

Cause: The thread is not closed. The last instance to use the thread died leaving the thread open. A thread cannot be disabled until it is closed. It is still required for crash or instance recovery.

Action: If the database is open, instance recovery should close the thread soon - wait a few minutes. Otherwise open the database - crash recovery will close the thread.

ORA-01617: cannot mount: string is not a valid thread number

Cause: The INIT.ORA parameter "thread" is not between 1 and the number of threads allowed by the control file.

Action: Shut down the instance, change the INIT.ORA parameter and startup, or resize the thread record and/or checkpoint progress record sections of the control file.

ORA-01618: redo thread string is not enabled - cannot mount

Cause: The INIT.ORA parameter "thread" requests a thread that is not enabled. A thread must be enabled before it can be mounted.

Action: Shutdown the instance, change the INIT.ORA parameter and startup mounting a different thread. If the database is open in another instance then the thread may be enabled.

ORA-01619: thread string is mounted by another instance

Cause: The INIT.ORA parameter "thread" requests a thread that has been mounted by another instance. Only one instance may use a thread.

Action: Shutdown the instance, change the INIT.ORA parameter and startup mounting a different thread.

ORA-01620: no public threads are available for mounting

Cause: The INIT.ORA parameter "thread" is zero, its default value. There are no threads which have been publicly enabled, and not mounted.

Action: Shutdown the instance, change the INIT.ORA parameter to a thread which is privately enabled and not mounted. If the database is open in another instance, then a thread may be publicly enabled.

ORA-01621: cannot rename member of current log if database is open

Cause: This is a rename command for a member of the current log for an open thread. If the database is open anywhere, the log may be in use, so the rename cannot be done.

Action: Wait until the log is not current, or mount the database exclusively.

ORA-01622: thread number must be specified - default not specific

Cause: The thread was not specified when adding a log, and the currently mounted thread was chosen by default at mount time. Since the current thread was not specified explicitly the user cannot know which thread the log will be added to.

Action: Explicitly specify the thread number either in the INIT.ORA parameter "thread", or in the add command.

ORA-01623: log string is current log for instance string (thread string) - cannot drop

Cause: A thread's current log cannot be dropped even if the thread is closed. A disabled thread usually does not have a current log, but a half completed disable may need to be disabled again.

Action: If the database is not open then disable the thread. If the database is open and an instance has the thread open, then the instance can be requested to switch logs. If the database is closed the log can be archived or cleared to force a switch.

ORA-01624: log string needed for crash recovery of instance string (thread string)

Cause: A log cannot be dropped or cleared until the thread's checkpoint has advanced out of the log.

Action: If the database is not open, then open it. Crash recovery will advance the checkpoint. If the database is open force a global checkpoint. If the log is corrupted so that the database cannot be opened, it may be necessary to do incomplete recovery until cancel at this log.

ORA-01625: rollback segment 'string' does not belong to this instance

Cause: Trying to shrink or take a rollback segment offline that does not belong to this instance.

Action: Take only those rollback segments offline that belong to the current instance. To take the rollback segment offline, connect to the instance containing it.

ORA-01626: rollback segment number 'string' cannot handle more transactions

Cause: Too many transactions in this segment.

Action: Choose a different rollback segment, or reduce the number of concurrent transactions.

ORA-01627: rollback segment number 'string' is not online

Cause: Could have been taken offline before by DBA or cleaned up by SMON.

Action: Check the status of rollback segment in undo$ or dba_rollback_segs to make sure the rollback segment is actually online.

ORA-01628: max # extents (string) reached for rollback segment string

Cause: An attempt was made to extend a rollback segment that was already at the MAXEXTENTS value.

Action: If the value of the MAXEXTENTS storage parameter is less than the maximum allowed by the system, raise this value.

ORA-01629: max # extents (string) reached saving undo for tablespace string

Cause: Save undo for the offline tablespace at max extents

Action: Check the storage parameters for the system tablespace. The tablespace needs to be brought back online so the undo can be applied .

ORA-01630: max # extents (string) reached in temp segment in tablespace string

Cause: A temp segment tried to extend past max extents.

Action: If maxextents for the tablespace is less than the the system maximum, you can raise that. Otherwise, raise pctincrease for the tablespace

ORA-01631: max # extents (string) reached in table string.string

Cause: A table tried to extend past maxextents

Action: If maxextents is less than the system maximum, raise it. Otherwise, you must recreate with larger initial, next or pctincrease params

ORA-01632: max # extents (string) reached in index string.string

Cause: An index tried to extend past maxextents

Action: If maxextents is less than the system max, raise it. Otherwise, you must recreate with larger initial, next or pctincrease params.

ORA-01633: Real Application Clusters Option needed for this operation

Cause: System doesn't have Real Application Clusters configured

Action: Obtain Real Application Clusters option

ORA-01634: rollback segment number 'string' is about to go offline

Cause: The rollback segment specified was marked to go offline by DBA.

Action: Bring the rollback segment online first.

ORA-01635: rollback segment #string specified not available

Cause: (same as 1545)

Action: (same as 1545)

ORA-01636: rollback segment 'string' is already online

Cause: The instance is trying to online an already online RS

Action: Check that the values set in the initialization parameter file for parameters ROLLBACK_SEGMENTS, ROLLBACK_SEGMENT_INITIAL, and ROLLBACK_SEGMENT_COUNT are correctly set for the instance with the problem. Also check that the instance is using the correct initialization parameter file. Make sure you are not confused about the difference between private and public rollback segments. See the Oracle9i Database Administrator's Guide for more information about using rollback segments in parallel mode.

ORA-01637: rollback segment 'string' is being used by another instance (#string)

Cause: The instance is trying to online a RS already in use by another instance

Action: Check that the values set in the initialization parameter file for parameters ROLLBACK_SEGMENTS, ROLLBACK_SEGMENT_INITIAL, and ROLLBACK_SEGMENT_COUNT are correctly set for the instance with the problem. Also check that the instance is using the correct initialization parameter file. Make sure you are not confused about the difference between private and public rollback segments. See the Oracle9i Database Administrator's Guide for more information about using rollback segments in parallel mode.

ORA-01638: parameter string does not allow ORACLE version string to mount cluster database

Cause: The recovery compatible parameter is set too low to allow this software version to mount in cluster database mode.

Action: Either use an earlier software release or advance the recovery_compatible parameter. If this happens when no recovery_compatible parameter has been specified then set it to the current software release.

ORA-01639: instance string has no thread assigned to it

Cause: There is no mapping from instance to thread for this instance in the control file.

Action: Make sure that this instance has a thread assigned to it by adding logfiles to this instance or by starting the instance with an existing thread which will automatically create a mapping.

ORA-01640: cannot make tablespace read-only with changes by in-doubt transactions

Cause: An attempt was made to alter a tablespace read-only while there were changes in the tablespace made by in-doubt distributed transactions. The in-doubt transactions must commit or rollback to ensure that there is no undo for a tablespace before it can be made read-only.

Action: Any in-doubt transactions that made changes to the tablespace must be resolved.

ORA-01641: tablespace 'string' is not online - cannot add data file

Cause: Attempting to add a datafile to a tablespace that has been set to read-only or offline.

Action: Make the tablespace online and read write then add the datafile.

ORA-01642: begin backup not needed for read-only tablespace 'string'

Cause: Attempting to begin or end a backup for a tablespace that has been set to read-only.

Action: Take the backup without any begin or end commands. The files are not being modified so the backup will be consistent.

ORA-01643: system tablespace can not be made read-only

Cause: Attempting to set the system tablespace to read-only. The system tablespace must remain read write for database operation.

Action: Leave system tablespace read write.

ORA-01644: tablespace 'string' is already read-only

Cause: Attempting to make tablespace read-only that is already read-only.

Action: Leave tablespace read-only, or make read write then make read-only again.

ORA-01645: previous attempt to make read write is half complete

Cause: A failure while making the tablespace read write left it read only, but the checkpoint was advanced. The tablespace will not be useable after a resetlogs if its files are offline.

Action: Repeat the command to make the tablespace read write.

ORA-01646: tablespace 'string' is not read-only - cannot make read write

Cause: Attempting to make a tablespace read write that is not read-only. It may be either online or offline.

Action: Leave tablespace read write.

ORA-01647: tablespace 'string' is read-only, cannot allocate space in it

Cause: Tried to allocate space in a read-only tablespace

Action: Create the object in another tablespace

ORA-01648: Log string is the current log of disabled instance string (thread string).

Cause: An attempt to enable the thread failed and a log was left as the current log even though the thread is still disabled. Since a log switch cannot be done until the thread is enabled, the log cannot be cleared or archived.

Action: Complete the thread enable by issuing the enable command again.

ORA-01649: operation not allowed with a backup control file

Cause: An attempt is being made to perform a command that does not make sense when the control file is a restored backup.

Action: Wait until after the database has been opened and try again.

ORA-01650: unable to extend rollback segment string by string in tablespace string

Cause: Failed to allocate an extent of the required number of blocks for a rollback segment in the tablespace.

Action: Use ALTER TABLESPACE ADD DATAFILE statement to add one or more files to the tablespace indicated.

ORA-01651: unable to extend save undo segment by string for tablespace string

Cause: Failed to allocate an extent of the required number of blocks for saving undo entries for the indicated offline tablespace.

Action: Check the storage parameters for the SYSTEM tablespace. The tablespace needs to be brought back online so the undo can be applied.

ORA-01652: unable to extend temp segment by string in tablespace string

Cause: Failed to allocate an extent of the required number of blocks for a temporary segment in the tablespace indicated.

Action: Use ALTER TABLESPACE ADD DATAFILE statement to add one or more files to the tablespace indicated.

ORA-01653: unable to extend table string.string by string in tablespace string

Cause: Failed to allocate an extent of the required number of blocks for a table segment in the tablespace indicated.

Action: Use ALTER TABLESPACE ADD DATAFILE statement to add one or more files to the tablespace indicated.

ORA-01654: unable to extend index string.string by string in tablespace string

Cause: Failed to allocate an extent of the required number of blocks for an index segment in the tablespace indicated.

Action: Use ALTER TABLESPACE ADD DATAFILE statement to add one or more files to the tablespace indicated.

ORA-01655: unable to extend cluster string.string by string in tablespace string

Cause: Failed to allocate an extent of the required number of blocks for a cluster segment in tablespace indicated.

Action: Use ALTER TABLESPACE ADD DATAFILE statement to add one or more files to the tablespace indicated.

ORA-01656: max # extents (string) reached in cluster string.string

Cause: A cluster tried to extend past maxextents

Action: If maxextents is less than the system maximum, raise it. Otherwise, you must recreate with larger initial, next or pctincrease params

ORA-01657: invalid SHRINK option value

Cause: The specified value must be an integer.

Action: Choose an appropriate integer value.

ORA-01658: unable to create INITIAL extent for segment in tablespace string

Cause: Failed to find sufficient contiguous space to allocate INITIAL extent for segment being created.

Action: Use ALTER TABLESPACE ADD DATAFILE to add additional space to the tablespace or retry with a smaller value for INITIAL

ORA-01659: unable to allocate MINEXTENTS beyond string in tablespace string

Cause: Failed to find sufficient contiguous space to allocate MINEXTENTS for the segment being created.

Action: Use ALTER TABLESPACE ADD DATAFILE to add additional space to the tablespace or retry with smaller value for MINEXTENTS, NEXT or PCTINCREASE

ORA-01660: tablespace 'string' is already permanent

Cause: Attempting to make tablespace permanent that is already permanent.

Action: Leave tablespace permanent.

ORA-01661: tablespace 'string' is already temporary

Cause: Attempting to make tablespace temporary that is already temporary.

Action: Leave tablespace permanent.

ORA-01662: tablespace 'string' is non-empty and cannot be made temporary

Cause: Tried to convert a non-empty tablespace to a temporary tablespace

Action: To drop all the objects in the tablespace.

ORA-01663: the contents of tablespace 'string' is constantly changing

Cause: The contents of the tablespace is always changing between PERMANENT and TEMPORARY.

Action: To decide what the tablespace contents should be and stay with it.

ORA-01664: Transaction which has expanded the Sort Segment has aborted

Cause: Internal Error.

Action: Contact Oracle Support.

ORA-01665: control file is not a standby control file

Cause: An attempt was made to mount, recover, or activate either a standby multitenant container database (CDB) without a standby control file, or a pluggable database (PDB) that was not created as an Oracle Data Guard standby database.

Action: When the error is raised for an action against a CDB, create a standby control file before using the CDB as a standby database. When the error is raised for an action against a PDB, check and correct the PDB context so that it is only used against a PDB created as a standby database.

ORA-01666: control file is for a standby database

Cause: Attempting to mount, recover, or open a standby database without the appropriate command option to designate a standby database.

Action: Use the standby option or appropriate commands, or mount with the primary control file.

ORA-01667: cannot add any more tablespaces: limit of string exceeded

Cause: There is no more room in the control file for adding tablespaces.

Action: Resize the control file or drop other tablespaces.

ORA-01668: standby database requires DROP option for offline of data file

Cause: Attempting to take a datafile offline in a standby database without specifying the DROP option. Files that are offline in a standby database are not recovered, and are likely to be unusable if the standby is activated. Note that specifying DROP does not prevent bringing the file online later.

Action: Specify the DROP option or leave the file online.

ORA-01669: standby database control file not consistent

Cause: Attempting to activate a standby database with a control file that has not been recovered to the same point as the data files. Most likely the control file was just copied from the primary database and has not been used for recovery.

Action: Recover the standby database until all the files are consistent.

ORA-01670: new datafile string needed for standby database recovery

Cause: Standby database recovery noticed that a file was added to the primary database, but is not available on the standby.

Action: Either copy the file from the primary database or do an ALTER DATABASE CREATE DATAFILE command on the standby to create a file to recover.

ORA-01671: control file is a backup, cannot make a standby control file

Cause: The currently mounted control file is a backup control file, and attempting to create a control file for a standby database.

Action: Complete any needed recovery and open the database with the resetlogs option.

ORA-01672: control file may be missing files or have extra ones

Cause: Attempting to create a standby control file, but the control file was either recently created via CREATE CONTROLFILE or an incomplete recovery has been done. Thus the datafiles in the control file and the ones in the data dictionary may not match.

Action: Open the database, then retry the operation.

ORA-01673: data file string has not been identified

Cause: This data file was not in the control file after an incomplete recovery or CREATE CONTROLFILE. Since information from its header is needed for standby database recovery, we can not create a standby control file.

Action: Find the file and bring it online. If desired it may be taken offline again. If you intend to drop this file, then taking it offline with the DROP option will avoid this error.

ORA-01674: data file string is an old incarnation rather than current file

Cause: Recovery encountered redo that indicates this file was dropped from the database and another file was added using the same file number. This implies that a CREATE CONTROLFILE command was given the old file which was dropped rather than the latest file.

Action: Rebuild the control file using CREATE CONTROLFILE, and give the correct file.

ORA-01675: max_commit_propagation_delay inconsistent with other instances

Cause: The max_commit_propagation_delay INIT.ORA parameter is inconsistent with those in other instances.

Action: Make sure all instances have the same max_commit_propagation_delay.

ORA-01676: standby file name conversion of 'string' exceeds maximum length of string

Cause: When the given file name was converted to the name used for the standby database, the converted name was bigger than the maximum allowed file name.

Action: Change initialization parameter DB_FILE_NAME_CONVERT or LOG_FILE_NAME_CONVERT to convert to a valid file name.

ORA-01677: standby file name conversion parameters differ from other instance

Cause: The DB_FILE_NAME_CONVERT or LOG_FILE_NAME_CONVERT initialization parameters were not the same as in other instances that already had the database mounted.

Action: Change initialization parameters DB_FILE_NAME_CONVERT or LOG_FILE_NAME_CONVERT to match other instances.

ORA-01678: parameter string must be pairs of pattern and replacement strings

Cause: The initialization parameter does not have even number of strings for its value. The odd numbered strings are patterns to be found in file names. The even numbered strings are used to replace the corresponding patterns when found in file names.

Action: Specify even number of strings for the parameter, or omit the parameter.

ORA-01679: database is being opened

Cause: An attempt was made to activate a standby database when the database was in the middle of being opened.

Action: Wait for database open to finish and retry the ACTIVATE command.

ORA-01680: unable to extend LOB segment by string in tablespace string

Cause: Failed to allocate an extent of the required number of blocks for a LOB segment in the tablespace indicated.

Action: Use ALTER TABLESPACE ADD DATAFILE statement to add one or more files to the tablespace indicated.

ORA-01681: max # extents (string) reached in LOB segment in tablespace string

Cause: A LOB segment tried to extend past max extents.

Action: If maxextents for the tablespace is less than the the system maximum, you can raise that. Otherwise, raise pctincrease for the tablespace

ORA-01682: read-only DB cannot allocate temporary space in tablespace string

Cause: Temporary space (usually for sorting) could not be allocated in either main storage or a tempfile. An attempt was made to allocate the space from the tablespace named, but the database is opened read-only. The database open requires a sort work space.

Action: Either allow sufficient workspace in main storage (SORT_AREA_SIZE initialization parameter), or create a temporary tablespace before making the database read-only. Use ALTER TABLESPACE ADD TEMPFILE statement to add temporary files to the temporary tablespace.

ORA-01683: unable to extend index string.string partition string by string in tablespace string

Cause: Failed to allocate an extent of the required number of blocks for index segment in the tablespace indicated.

Action: Use ALTER TABLESPACE ADD DATAFILE statement to add one or more files to the tablespace indicated.

ORA-01684: max # extents (string) reached in table string.string partition string

Cause: A table tried to extend past maxextents

Action: If maxextents is less than the system maximum, raise it. Otherwise, you must recreate with larger initial, next or pctincrease params

ORA-01685: max # extents (string) reached in index string.string partition string

Cause: An index tried to extend past maxextents

Action: If maxextents is less than the system max, raise it. Otherwise, you must recreate with larger initial, next or pctincrease params.

ORA-01686: max # files (string) reached for the tablespace string

Cause: The number of files for a given tablespace has reached its maximum value

Action: Resize existing files in the tablespace, or partition the objects among multiple tablespaces, or move some objects to a different tablespace.

ORA-01687: specified logging attribute for tablespace 'string' is same as the existing

Cause: Attempting to change the tablespace default logging attribute (LOGGING or NOLOGGING) to be the same as the existing logging attribute

Action: Change the specified logging attribute

ORA-01688: unable to extend table string.string partition string by string in tablespace string

Cause: Failed to allocate an extent of the required number of blocks for table segment in the tablespace indicated.

Action: Use ALTER TABLESPACE ADD DATAFILE statement to add one or more files to the tablespace indicated.

ORA-01689: syntax error in clause "string" of string

Cause: There was a syntax in the INIT.ORA parameter.

Action: Fix the syntax error and restart the instance.

ORA-01690: sort area size too small

Cause: sort area size too small to fit two records in memory

Action: increase sort_area_size

ORA-01691: unable to extend lob segment string.string by string in tablespace string

Cause: Failed to allocate an extent of the required number of blocks for LOB segment in the tablespace indicated.

Action: Use ALTER TABLESPACE ADD DATAFILE statement to add one or more files to the tablespace indicated.

ORA-01692: Unable to extend the LOB segment string.string partition string by string in tablespace string.

Cause: Failed to allocate an extent of the required number of blocks for the LOB segment in the specified tablespace.

Action: One of the following actions may resolve the problem: 1. Turn ON autoextension for the data files. 2. Increase MAXSIZE value for autoextensible files. 3. If the segment is in a SMALLFILE tablespace, add one or more data files.

ORA-01693: max # extents (string) reached in lob segment string.string

Cause: A LOB segment tried to extend past maxextents

Action: If maxextents is less than the system max, raise it. Otherwise, you must recreate with larger initial, next or pctincrease params.

ORA-01694: max # extents (string) reached in lob segment string.string partition string

Cause: A LOB segment tried to extend past maxextents

Action: If maxextents is less than the system max, raise it. Otherwise, you must recreate with larger initial, next or pctincrease params.

ORA-01695: error converting rollback segment string to version 8.0.2

Cause: Version 8.0.1 database may not have shutdown cleanly

Action: May have to reload the 8.0.1 database and shutdown cleanly

ORA-01696: control file is not a clone control file

Cause: Attempting to mount, a database as a clone when it is already mounted by another instance not as a clone or attempting to use a current control file for a clone.

Action: Mount without the clone option or use a backup control file and shutdown the other instances before mounting as a clone.

ORA-01697: control file is for a clone database

Cause: Attempting to mount a clone database without the appropriate command option to designate a clone database.

Action: Use the clone option or appropriate commands, or mount with the primary control file.

ORA-01698: a clone database may only have SYSTEM rollback segment online

Cause: Attempting to online a rollback segment in a clone database.

Action: Do not use this command.

ORA-01699: tablespace 'string' is being imported for point in time recovery

Cause: Attempting to online a tablespace or begin another point in time import while a point in time import was already in progress.

Action: Wait until the import completes.

ORA-01700: duplicate username in list

ORA-01701: a cluster is not appropriate here

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.

ORA-01703: missing SYNONYM keyword

ORA-01704: string literal too long

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.

ORA-01716: NOSORT may not be used with a cluster index

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.

ORA-01719: outer join operator (+) not allowed in operand of OR or IN

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)).

ORA-01720: grant option does not exist for string.string

Cause: A grant was attempted 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.

ORA-01721: USERENV(COMMITSCN) invoked more than once in a transaction

Cause: The USERENV('COMMITSCN') function can only be used once in a transaction.

Action: Re-write the transactioin to use USERENV('COMMITSCN') only once

ORA-01722: invalid number

Cause: The specified number was invalid.

Action: Specify a valid number.

ORA-01723: zero-length columns are not allowed

Cause: Columns with zero length were not allowed.

Action: Correct the use of the column.

ORA-01724: floating point precision is out of range (1 to 126)

Cause: The specified number had an invalid range.

Action: Use a floating point precision that is in the correct precision.

ORA-01725: USERENV('COMMITSCN') not allowed here

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

Cause: A table name was used in a statement in which tables were not permitted.

Action: Enter a valid table statement or use the current statement on the appropriate object.

ORA-01727: numeric precision specifier is out of range (1 to 38)

Cause: The precision specified for a number column in a CREATE or ALTER TABLE or CREATE CLUSTER statement must be a digit between 1 and 38. If no precision was specified, a default precision of 22 digits was used.

Action: Specify numeric precision between 1 and 38 and retry the statement.

ORA-01728: numeric scale specifier is out of range (-84 to 127)

Cause: The scale specified for a numeric field in a CREATE or ALTER TABLE or CREATE CLUSTER statement was not in the valid range. It should be between -84 and 127.

Action: Specify a numeric scale between -84 and 127. If a number is not specified, the default scale of the column is 0 decimal places.

ORA-01729: database link name expected

Cause: A database link name did not follow the at-sign (@) in a reference to a table in a remote database.

Action: Correct the reference and retry the operation. The correct syntax for denoting a table in a remote database follows: username.table_name@ database_name Spaces before and after the at-sign (@) are optional.

ORA-01730: invalid number of column names specified

Cause: The number of column names specified in a CREATE VIEW statement did not correspond to the number of columns listed in the SELECT clause. If column names were specified in a CREATE VIEW statement, exactly one name must be specified for each column or expression in the SELECT clause.

Action: Specify one view column name for each column in the SELECT clause.

ORA-01731: circular view definition encountered

Cause: Through a series of CREATE and DROP VIEW statements, a view was defined that referred to itself. For example, VIEW1 might include a column from VIEW2 that was defined as a column in VIEW1. View definitions may be seen by querying the data dictionary.

Action: Check the view definitions, remove any circular references, and retry the statements.

ORA-01732: data manipulation operation not legal on this view

Cause: An attempt was made to use an UPDATE, INSERT, or DELETE statement on a view that contains expressions or functions or was derived from more than one table. If a join operation was used to create the view or the view contains virtual columns derived from functions or expressions, then the view may only be queried.

Action: UPDATE, INSERT, or DELETE rows in the base tables instead and restrict the operations on the view to queries.

ORA-01733: virtual column not allowed here

Cause: An attempt was made to use an INSERT, UPDATE, or DELETE statement on an expression in a view.

Action: INSERT, UPDATE, or DELETE data in the base tables, instead of the view.

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

Cause: An invalid option was specified in an ALTER TABLE statement.

Action: Check the statement syntax, specify a valid option, and retry the statement.

ORA-01736: [NOT] SUCCESSFUL expected

Cause: An AUDIT or NOAUDIT statement contained WHENEVER followed by something other than SUCCESSFUL or NOT SUCCESSFUL.

Action: Correct the WHENEVER clause and retry the statement.

ORA-01737: valid modes: [ROW] SHARE, [[SHARE] ROW] EXCLUSIVE, SHARE UPDATE

Cause: The lock mode entered was not recognized.

Action: Valid lock modes are SHARE, ROW SHARE, EXCLUSIVE, ROW EXCLUSIVE, SHARE ROW EXCLUSIVE, and SHARE UPDATE.

ORA-01738: missing IN keyword

Cause: In a LOCK TABLE statement, the keyword IN was missing.

Action: Place the keyword IN and lock mode directly after the table name in the LOCK TABLE statement and retry the statement.

ORA-01739: missing MODE keyword

Cause: In a LOCK TABLE statement, the keyword MODE was missing. The keyword MODE must directly follow the specified lock mode.

Action: Check the statement syntax, insert the keyword MODE where required, and retry the statement.

ORA-01740: missing double quote in identifier

Cause: An initial double quote (") was found without a closing quote. If an identifier contains a blank or special characters other than $, #, or _, it must be enclosed in double quotes.

Action: Add a closing double quote (") to the end of the identifier.

ORA-01741: illegal zero-length identifier

Cause: An attempt was made to use two double quotes ("") as an identifier. An identifier must be at least one character long.

Action: Insert at least one character between the double quotes in the identifier. If a blank identifier is required, specify a blank space between the double quotes (" ").

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 */.

ORA-01743: only pure functions can be indexed

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

Cause: The INTO clause may not be used in a subquery.

Action: Check the syntax, place the INTO clause in the top-level query, and retry the statement.

ORA-01745: invalid host/bind variable name

Cause: A colon in a bind variable or INTO specification was followed by an inappropriate name, perhaps a reserved word.

Action: Change the variable name and retry the operation.

ORA-01746: indicator variable not permitted here

Cause: An indicator variable was not permitted in this context.

Action: Remove the indicator variable and retry the operation.

ORA-01747: invalid column specification: string

Cause: A column name was specified improperly in the current SQL statement.

Action: Check the syntax of the statement, and ensure that: * Any column names that are reserved words are quoted * All column names are specified correctly * There are no dangling commas Then retry the statement.

ORA-01748: only simple column names allowed here

Cause: This SQL statement did not allow a qualified column name, such as username.table.column or table.column.

Action: Remove the qualifications from the column and retry the operation.

ORA-01749: you may not GRANT/REVOKE privileges to/from yourself

Cause: Grantor was not allowed to grant or revoke object or system privileges to self.

Action: Issue the GRANT or REVOKE of system privileges from another database administrator account.

ORA-01750: UPDATE/REFERENCES may only be REVOKEd from the whole table, not by column

Cause: Although it was possible to GRANT update privileges on a column-by-column basis, it was only possible to REVOKE them for an entire table.

Action: Do not identify specific columns. To revoke update privileges for certain columns, use REVOKE for the entire table and GRANT the user privileges for specific columns.

ORA-01751: Invalid dump undo option

Cause: An invalid option is specified in the ALTER DUMP UNDO command.

Action: Correct and reissue the command.

ORA-01752: cannot delete from view without exactly one key-preserved table

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.

ORA-01753: column definition incompatible with clustered column definition

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.

ORA-01754: a table may contain only one column of type LONG

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.

ORA-01755: Must specify an extent number or block number

Cause: Expecting an extent or block number but something else was specified.

Action: Correct the error and reissue the command.

ORA-01756: quoted string not properly terminated

Cause: A quoted string must be terminated with a single quote mark (').

Action: Insert the closing quote and retry the statement.

ORA-01757: Must specify an object number

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

Cause: It was not possible to define a new column as NOT NULL if rows already existed in the table being modified.

Action: Retry the statement without the NOT NULL specification.

ORA-01759: user function is incorrectly defined

Cause: A user function was improperly defined.

Action: Contact Oracle Support Services.

ORA-01760: illegal argument for function

Cause: The argument or arguments specified for the function were not valid in this context.

Action: Check the definition of the function and correct the arguments.

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

Cause: This is an internal error message not normally issued.

Action: Contact Oracle Support Services.

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, or the underlying table being updated in a join view is referenced on the right side of an outer join or full outer join in the view.

Action: Change the join specification.

ORA-01764: new update value of join is not guaranteed to be unique

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.

ORA-01765: specifying owner's name of the table is not allowed

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

Cause: The name of a data dictionary object was used outside the FROM clause of a SELECT statement. The only operation allowed on a data dictionary object was to SELECT from it.

Action: Restrict operations on data dictionary objects to queries.

ORA-01767: UPDATE ... SET expression must be a subquery

Cause: An attempt was made to use a single expression without a subquery to update a list of columns.

Action: Check the syntax for using subqueries to update data and add the necessary subquery.

ORA-01768: number string too long

Cause: A number entered exceeded the limit of 255 characters, including digits, sign, decimal point, and exponent.

Action: Shorten the number string, perhaps by expressing it in scientific notation, for example, 1.85E9 instead of 1,850,000,000.

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

Cause: An attempt was made to use the CLUSTER option within a CREATE CLUSTER statement.

Action: Remove the CLUSTER clause and try again.

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).

ORA-01772: Must specify a value for LEVEL

Cause: Expecting the value of LEVEL but something else was specified.

Action: Correct the error and reissue the command.

ORA-01773: may not specify column datatypes in this CREATE TABLE

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.

ORA-01774: Dump undo option specified more than once

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

Cause: Through a series of CREATE synonym statements, a synonym was defined that referred to itself. For example, the following definitions are circular: CREATE SYNONYM s1 for s2 CREATE SYNONYM s2 for s3 CREATE SYNONYM s3 for s1

Action: Change one synonym definition so that it applies to a base table or view and retry the operation.

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

Cause: This version of Oracle did not support the WITH GRANT OPTION.

Action: Remove the WITH GRANT option.

ORA-01778: maximum subquery nesting level exceeded

Cause: An attempt was made to use more than 255 levels of nested subqueries.

Action: Merge some of the subqueries into their containing queries, until there are less than 255 levels of nesting.

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.

ORA-01780: string literal required

Cause: In a COMMENT statement, the Comment following the keyword IS must be a quoted string literal.

Action: Check that the Comment is a string literal.

ORA-01781: UNRECOVERABLE cannot be specified without AS SELECT

Cause: UNRECOVERABLE was specified in a CREATE TABLE statement without also specifying a populating subquery with an AS clause.

Action: Do not specify UNRECOVERABLE.

ORA-01782: UNRECOVERABLE cannot be specified for a cluster or clustered table

Cause: A CREATE CLUSTER, or clustered CREATE TABLE statement specified UNRECOVERABLE.

Action: Do not specify UNRECOVERABLE.

ORA-01783: only one RECOVERABLE or UNRECOVERABLE clause may be specified

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.

ORA-01784: RECOVERABLE cannot be specified with database media recovery disabled

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

Cause: Either an ORDER BY item for a set expression was not a column number, or the ORDER BY item was not the number of a SELECT list column.

Action: The ORDER BY item must be a number between 1 and the number of columns in the SELECT list. Check the column number and retry the statement.

ORA-01786: FOR UPDATE of this query expression is not allowed

Cause: An attempt was made to use a FOR UPDATE clause on the result of a set expression involving GROUP BY, DISTINCT, UNION, INTERSECT, or MINUS.

Action: Check the syntax, remove the FOR UPDATE clause, and retry the statement.

ORA-01787: only one clause allowed per query block

Cause: An attempt was made to use more than one WHERE, GROUP BY, CONNECT BY, or HAVING clause in the query.

Action: Combine the duplicate clauses into a single clause and retry the statement.

ORA-01788: CONNECT BY clause required in this query block

Cause: A START WITH clause was specified without a CONNECT BY clause.

Action: Check the syntax, specify a CONNECT BY clause, and retry the statement.

ORA-01789: query block has incorrect number of result columns

Cause: All of the queries participating in a set expression do not contain the same number of SELECT list columns.

Action: Check that all the queries in the set expression have the same number of SELECT list columns.

ORA-01790: expression must have same datatype as corresponding expression

Cause: A SELECT list item corresponds to a SELECT list item with a different datatype in another query of the same set expression.

Action: Check that all corresponding SELECT list items have the same datatypes. Use the TO_NUMBER, TO_CHAR, and TO_DATE functions to do explicit data conversions.

ORA-01791: not a SELECTed expression

Cause: There was an incorrect ORDER BY item. The query was a SELECT DISTINCT query with an ORDER BY clause. In this context, all ORDER BY items must be constants, SELECT list expressions, or expressions whose operands were constants or SELECT list expressions.

Action: Remove the inappropriate ORDER BY item from the SELECT list and retry the statement.

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

Cause: While creating an index, more than 32 columns were specified.

Action: Remove some columns from the index definition. If all the columns indexed are required, split them into two indexes.

ORA-01794: maximum number of cluster columns is 32

Cause: More than 32 columns were specified in the cluster key.

Action: Remove some of the columns from the cluster key definition. Consider concatenating multiple character strings into a single column.

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

Cause: A relational operator was not allowed in this context. When comparing lists, use only an operator that tests for equivalence, such as =, !=, or IN.

Action: Rephrase the query so that it only compares lists for equivalence. For example, the following clause is invalid: WHERE (A,B) > ((C,D), (E,F)) It may be necessary to compare individual columns separately. For example, to see if A and B are respectively greater than C and D, use WHERE A>B AND C>D instead of WHERE (A,B)>(C,D).

ORA-01797: this operator must be followed by ANY or ALL

Cause: The keyword ANY or ALL was missing.

Action: Check the statement syntax and add ANY or ALL where appropriate.

ORA-01798: missing EXCEPTION keyword

Cause: The EXCEPTION keyword was missing from the ENABLE clause.

Action: Correct the syntax.

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

Cause: A literal specified in a date format was too large. If a literal was entered as a date, it must be less than 220 characters long.

Action: Use only literals less than 220 characters long in the date format.

ORA-01801: date format is too long for internal buffer

Cause: The date format string was too long to process. This occurred only if several long literals are specified as part of a date.

Action: Remove long literals from the date format string.

ORA-01802: Julian date is out of range

Cause: An invalid Julian date was entered. Valid Julian dates ran from 1 to 3,442,447.

Action: Enter a valid Julian date between 1 and 3,442,447.

ORA-01803: Failed to get system date and time.

Cause: An internal failure in the system clock occurred.

Action: Investigate the system clock and the process that requested the date or time. If necessary, contact Oracle Support Services.

ORA-01804: failure to initialize timezone information

Cause: The timezone information file was not properly read.

Action: Please contact Oracle Customer Support.

ORA-01805: possible error in date/time operation

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

Cause: A format code was listed twice in a date specification. Each format code may be specified only once in the function TO_DATE.

Action: Remove the duplicate format code from the date specification, then retry the operation.

ORA-01811: Julian date precludes use of day of year

Cause: Both a Julian date and a day of the year were specified in the TO_DATE function. If a Julian date is specified, the day of the year (DDD) may not be specified, as it is contained in the Julian date.

Action: Remove the day of the year or the Julian date from the specification, then retry the operation.

ORA-01812: year may only be specified once

Cause: More than one year format code was listed in a date specification. Only one of the following year format codes may be specified in a date: YYYY, YYY, YY, Y.

Action: Remove all but one year format from the date specification.

ORA-01813: hour may only be specified once

Cause: More than one hour format code was listed in a date specification. Only one of the following hour format codes may be specified in a date: HH, HH12, HH24.

Action: Remove all but one hour format from the date specification.

ORA-01814: AM/PM conflicts with use of A.M./P.M.

Cause: Both types of meridian indicators, AM and PM, were listed in a date specification. If one of the meridian indicator format masks, such as AM or A.M., is specified in the date, the other may not be specified.

Action: Use one meridian indicator format, with or without periods, consistently.

ORA-01815: BC/AD conflicts with use of B.C./A.D.

Cause: Both types of BC/AD indicators were listed in a date specification. If one of the BC/AD indicator format masks, such as BC or B.C., was specified in the date, the other may not be specified.

Action: Use one BC/AD indicator format, with or without periods, consistently.

ORA-01816: month may only be specified once

Cause: More than one month format code was listed in a date specification. Only one of the following month format codes may be specified in a date: MM, MON, MONTH.

Action: Remove all but one month format from the date specification.

ORA-01817: day of week may only be specified once

Cause: More than one day-of-the-week format code was listed in a date specification. Only one of the following day-of-the-week format codes may be specified in a date: D, DY, DAY.

Action: Remove all but one day-of-the-week format from the date specification.

ORA-01818: 'HH24' precludes use of meridian indicator

Cause: A date specification contained both a 24-hour time format code and a meridian indicator code. If hours are specified using the 24-hour time format (HH24), a meridian indicator, AM or PM, may not be specified.

Action: Remove the meridian indicator format code, AM/PM or A.M./P.M., or the 24-hour time format code, HH24, from the date specification.

ORA-01819: signed year precludes use of BC/AD

Cause: A date specification contained both a signed year and a B.C./A.D. indicator. If the year is specified with a sign, such as SYYYY, then B.C. or A.D. is implicit in the date and must not be entered.

Action: Remove the B.C./A.D. indicator from the date specification.

ORA-01820: format code cannot appear in date input format

Cause: A date specification contained an invalid format code. Only the following may be specified when entering a date: year, month, day, hours, minutes, seconds, Julian day, A.M./P.M. and B.C./A.D.

Action: Remove the invalid format code from the date specification.

ORA-01821: date format not recognized

Cause: A date specification contained an invalid format code.

Action: Check that only valid date format codes are specified.

ORA-01822: era format code is not valid with this calendar

Cause: An era format code, E or EE, was specified with a calendar which did not use era information.

Action: Retry the operation using a date format mask which does not contain era format codes.

ORA-01830: Date format picture ends before converting entire input string.

Cause: A valid date format picture included extra data. The first part of the format picture was converted into a valid date. The remaining data was not required.

Action: Check the specifications of the date format picture and retry.

ORA-01831: year conflicts with Julian date

Cause: The wrong year was specified with a Julian day. If a year was specified with a Julian date, it must be the year in which the Julian date occurred.

Action: Remove the year value from the date specification or enter the correct year for the Julian date.

ORA-01832: day of year conflicts with Julian date

Cause: A Julian date was specified with the day of the year but the day did not correspond to the Julian date. If the day of the year was specified with a Julian date, it must be the same day as the Julian date.

Action: Remove the day of the year value from the date specification or enter the correct day for the Julian date.

ORA-01833: month conflicts with Julian date

Cause: The wrong month was specified with a Julian date. If a month is specified with a Julian date, it must be the month in which the Julian date occurs.

Action: Remove the month value from the date specification or enter the correct month for the Julian date.

ORA-01834: day of month conflicts with Julian date

Cause: A Julian date was specified with the day of the month, but the month day did not correspond to the Julian date. If the day of the month was specified with a Julian date, it must be the same day of the month as the Julian date.

Action: Remove the day of the month value from the date specification or enter the correct day of the month for the Julian date.

ORA-01835: day of week conflicts with Julian date

Cause: A Julian date was specified with the day of the week, but the weekday did not correspond to the Julian date. If the day of the week was specified with a Julian date, it must be the same day of the week as the Julian date.

Action: Remove the day of the week value from the date specification or enter the correct day of the week for the Julian date.

ORA-01836: hour conflicts with seconds in day

Cause: The wrong hour was specified with seconds in the day. If an hour was specified with seconds past midnight (SSSSS), it must be the hour in which the seconds value fell.

Action: Remove the hour value from the date specification or specify the correct hour for the seconds past midnight.

ORA-01837: minutes of hour conflicts with seconds in day

Cause: A date specification contained both minutes of the hour and seconds in the day but the values did not correspond. If both minutes in the hour (MI) and seconds past midnight (SSSSS) are specified, the minutes value must be the minute in which the seconds value occurred.

Action: Remove the minutes value from the date specification or enter the correct minute value for the specified seconds value.

ORA-01838: seconds of minute conflicts with seconds in day

Cause: A date specification contained both seconds of the minute and seconds in the day but the values did not correspond. If both types of seconds are specified, the seconds of the minute value (SS) must be the second in which the seconds past midnight value (SSSSS) fell.

Action: Remove the seconds of the minute value from the date specification or enter a value that corresponds to the given seconds in the day.

ORA-01839: date not valid for month specified

Cause: The day of the month specified in the date was invalid for the given month. The day of the month (DD) must be between 1 and the number of days in the month.

Action: Enter a valid day of the month for the specified month.

ORA-01840: input value not long enough for date format

Cause: The data to be converted to date format was incomplete; the date format picture was longer than the input data.

Action: Either add more input or shorten the date picture format, then retry the operation.

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

Cause: An invalid value was specified for the quarter of the year in a date. The quarter (Q) must be between 1 and 4.

Action: Enter a value for quarter between 1 and 4.

ORA-01843: An invalid month was specified.

Cause: You specified a date with an invalid month.

Action: Enter a valid month value using either the correctly spelled full month name or valid short month code.

ORA-01844: week of year must be between 1 and 52

Cause: An invalid value was specified for the week of the year in a date. Week of the year (WW) must be between 1 and 52.

Action: Enter a week of the year value between 1 and 52.

ORA-01845: week of month must be between 1 and 5

Cause: An invalid value was specified for the week of the month in a date. Week of the month (W) must be between 1 and 5.

Action: Enter a week of the month value between 1 and 5.

ORA-01846: not a valid day of the week

Cause: A date specified an invalid day of the week. Valid days are: - Monday-Sunday, for format code DAY - Mon-Sun, for format code DY - 1-7, for format code D

Action: Enter a valid day of the week value in the correct format.

ORA-01847: day of month must be between 1 and last day of month

Cause: The day of the month listed in a date was invalid for the specified month. The day of the month (DD) must be between 1 and the number of days in that month.

Action: Enter a valid day value for the specified month.

ORA-01848: day of year must be between 1 and 365 (366 for leap year)

Cause: An invalid day of the year was specified in a date. Day of the year (DDD) must be between 1 and 365 for a non-leap year or 1 and 366 for a leap year.

Action: Enter a day of the year value between 1 and 365 (or 366).

ORA-01849: hour must be between 1 and 12

Cause: An invalid hour was specified for a date using the 12-hour time format. If a 12-hour format code (HH or HH12) is used, the specified hour must be between 1 and 12.

Action: Enter an hour value between 1 and 12.

ORA-01850: hour must be between 0 and 23

Cause: An invalid hour was specified for a date using the 24-hour time format. If the 24-hour format code (HH24) was listed, the specified hour must be between 0 and 23.

Action: Enter an hour value between 0 and 23.

ORA-01851: minutes must be between 0 and 59

Cause: An invalid minute value was specified in a date. Minutes must be between 0 and 59.

Action: Enter a minute value between 0 and 59.

ORA-01852: seconds must be between 0 and 59

Cause: An invalid seconds value was specified in a date. Seconds must be between 0 and 59 if the seconds format code (SS) was used.

Action: Enter a seconds value between 0 and 59.

ORA-01853: seconds in day must be between 0 and 86399

Cause: An invalid value for seconds in the day was specified in a date. Seconds must be between 0 and 86399 if the seconds past midnight format code (SSSSS) was used.

Action: Specify a seconds value 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

Cause: A date specification contained a meridian indicator format code but a valid meridian indicator was not specified. If a meridian indicator code, A.M., P.M., AM or PM, was included in a date format, the date must include a valid meridian indicator.

Action: Specify the meridian indicator in the correct format, A.M./AM or P.M./PM.

ORA-01856: BC/B.C. or AD/A.D. required

Cause: A date specification contained a BC/AD format code but a valid BC/AD indicator was not specified. If one of the BC/AD format codes, BC/AD or B.C./A.D., is specified in a date format, the date must include BC/B.C. or AD/A.D.

Action: Specify the BC/AD indicator in the date using the correct format.

ORA-01857: not a valid time zone

Cause: An incorrect time zone code was specified for the NEW_TIME function.

Action: Correct the invalid time zone code, then retry the operation.

ORA-01858: A non-numeric character was found instead of a numeric character.

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 ensure that the elements match the number and type. Retry the operation.

ORA-01859: a non-alphabetic character was found where an alphabetic was expected

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.

ORA-01860: week of year must be between 1 and 53

Cause: A week number outside the range 1 to 53 was specified.

Action: Use only a value within the valid range for the week number.

ORA-01861: literal does not match format string

Cause: A literal was specified that did not match the the format string, excluding leading spaces.

Action: Correct the format string to match the literal, or the literal to match the format string.

ORA-01862: the numeric value does not match the length of the format item

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.

ORA-01863: the year is not supported for the current calendar

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.

ORA-01864: the date is out of range for the current calendar

Cause: Your calendar doesn't extend to the specified date.

Action: Specify a date which is legal for this calendar.

ORA-01865: not a valid era

Cause: Era input does not match a known era.

Action: Provide a valid era on input.

ORA-01866: the datetime class is invalid

Cause: This is an internal error.

Action: Please contact Oracle Worldwide Support.

ORA-01867: the interval is invalid

Cause: The character string you specified is not a valid interval.

Action: Please specify a valid interval.

ORA-01868: the leading precision of the interval is too small

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

Cause: Not an error.

Action: No action required.

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.

ORA-01871: the number of seconds must be less than 60

Cause: The number of seconds specified was greater than 59.

Action: Specify a value for seconds that is 59 or smaller.

ORA-01872: reserved for future use

Cause: Not an error.

Action: No action required.

ORA-01873: the leading precision of the interval is too small

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-01874: time zone hour must be between -15 and 15

Cause: The time zone hour specified was not in the valid range.

Action: Specify a time zone hour between -15 and 15.

ORA-01875: time zone minute must be between -59 and 59

Cause: The time zone minute specified was not in the valid range.

Action: Specify a time zone minute between -59 and 59.

ORA-01876: year must be at least -4713

Cause: The specified year was not in range.

Action: Specify a year that is greater than or equal to -4713.

ORA-01877: string is too long for internal buffer

Cause: This is an internal error.

Action: Please contact Oracle Worldwide Support.

ORA-01878: specified field not found in datetime or interval

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.

ORA-01879: the hh25 field must be between 0 and 24

Cause: The specified hh25 field was not in the valid range.

Action: Specify an hh25 field between 0 and 24.

ORA-01880: the fractional seconds must be between 0 and 999999999

Cause: The specified fractional seconds were not in the valid range.

Action: Specify a value for fractional seconds between 0 and 999999999.

ORA-01881: timezone region ID is invalid

Cause: The region ID referenced an invalid region.

Action: Contact Oracle Support Services.

ORA-01882: time zone region not found

Cause: The specified time zone region name was not found.

Action: Contact Oracle Support Services.

ORA-01883: overlap was disabled during a region transition

Cause: The region was changing state and the overlap flag was disabled.

Action: Please contact Oracle Customer Support.

ORA-01884: divisor is equal to zero

Cause: An attempt was made to divide by zero.

Action: Avoid zero divisor.

ORA-01885: public synonym collides with Oracle-supplied schema name

Cause: The public synonym was the same as the Oracle-supplied schema name.

Action: Use either a different synonym or a different schema name.

ORA-01886: use CREATE PUBLIC SYNONYM statement to create a public synonym

Cause: An attempt was made to create a public synonym by issuing a CREATE SYNONYM statement naming PUBLIC as the name of the schema to which the synonym belongs.

Action: Either specify a valid schema for the synonym or use a CREATE PUBLIC SYNONYM statement.

ORA-01887: use ALTER PUBLIC SYNONYM statement to alter a public synonym

Cause: An attempt was made to alter a public synonym by issuing an ALTER SYNONYM statement naming PUBLIC as the name of the schema to which the synonym belongs.

Action: Use an ALTER PUBLIC SYNONYM statement to alter a public synonym.

ORA-01888: use DROP PUBLIC SYNONYM statement to drop a public synonym

Cause: An attempt was made to drop a public synonym by issuing a DROP SYNONYM statement naming PUBLIC as the name of the schema to which the synonym belongs.

Action: Use a DROP PUBLIC SYNONYM statement to drop a public synonym.

ORA-01890: NLS error detected

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.

ORA-01891: Datetime/Interval internal error

Cause: Internal error.

Action: Please contact Oracle Worldwide Support.

ORA-01898: too many precision specifiers in date format model

Cause: While trying to truncate or round dates, too many format models (like 'YY' or 'MM') for ROUND or TRUNC were found in the call. Not all date format models can be combined in a call to TRUNC and ROUND.

Action: Check the documentation for which date format models can be combined in the call to ROUND and TRUNC. Correct the date format and retry the operation.

ORA-01899: bad precision specifier

Cause: An invalid precision code was specified in a date.

Action: Enter a valid precision code in the date format. Valid precision types are: century, year, month, day, Julian date, hours, minutes, and seconds.

ORA-01900: LOGFILE keyword expected

Cause: keyword missing

Action: supply missing keyword

ORA-01901: ROLLBACK keyword expected

Cause: keyword missing

Action: supply missing keyword

ORA-01902: SEGMENT keyword expected

Cause: keyword missing

Action: supply missing keyword

ORA-01903: EVENTS keyword expected

Cause: keyword missing

Action: supply missing keyword

ORA-01904: DATAFILE keyword expected

Cause: keyword missing

Action: supply missing keyword

ORA-01905: STORAGE keyword expected

Cause: keyword missing

Action: supply missing keyword

ORA-01906: BACKUP keyword expected

Cause: keyword missing

Action: supply missing keyword

ORA-01907: TABLESPACE keyword expected

Cause: keyword missing

Action: supply missing keyword

ORA-01908: EXISTS keyword expected

Cause: keyword missing

Action: supply missing keyword

ORA-01909: REUSE keyword expected

Cause: keyword missing

Action: supply missing keyword

ORA-01910: TABLES keyword expected

Cause: keyword missing

Action: supply missing keyword

ORA-01911: CONTENTS keyword expected

Cause: keyword missing

Action: supply missing keyword

ORA-01912: ROW keyword expected

Cause: keyword missing

Action: supply missing keyword

ORA-01913: EXCLUSIVE keyword expected

Cause: keyword missing

Action: supply missing keyword

ORA-01914: invalid auditing option for sequence numbers

Cause: AUDIT or NOAUDIT was specified as an auditing option that is not valid for sequence numbers.

Action: The following options are not allowed for sequence numbers and must be removed: COMMENT, DELETE, INDEX, INSERT, LOCK, RENAME, UPDATE, REFERENCES, EXECUTE.

ORA-01915: invalid auditing option for views

Cause: AUDIT or NOAUDIT was specified on views that had audit options not valid for views.

Action: The following options cannot be used for views and must be removed: ALTER, INDEX, REFERENCES, EXECUTE

ORA-01916: keyword ONLINE, OFFLINE, RESIZE, AUTOEXTEND, END, DROP, ENABLE, REMOVE, SUSPEND, ENCRYPT, or DECRYPT expected

Cause: An expected keyword was not used for the data file or the temporary file clause. Note the ENCRYPT and DECRYPT keywords are only applicable to the data file.

Action: Use the correct syntax.

ORA-01917: user or role 'string' does not exist

Cause: A user or role by that name did not exist.

Action: Re-specify the name.

ORA-01918: user 'string' does not exist

Cause: User does not exist in the system.

Action: Verify the user name is correct.

ORA-01919: role 'string' does not exist

Cause: A role by the specified name did not exist.

Action: Verify that the role name used is correct.

ORA-01920: user name 'string' conflicts with another user or role name

Cause: There is already a user or role with that name.

Action: Specify a different user name.

ORA-01921: role name 'string' conflicts with another user or role name

Cause: There is already a user or role with that name.

Action: Specify a different role name.

ORA-01922: CASCADE must be specified to drop 'string'

Cause: Cascade is required to remove this user from the system. The user own's object which will need to be dropped.

Action: Specify cascade.

ORA-01923: CASCADE aborted, objects locked by another user

Cause: Cannot drop the user's objects; someone has them locked.

Action: Use the lock monitor to determine who has the objects locked.

ORA-01924: role 'string' not granted or does not exist

Cause: Either the role was not granted to the user, or the role did not exist.

Action: Create the role or grant the role to the user and retry the operation.

ORA-01925: unused error

ORA-01926: cannot GRANT to a role WITH GRANT OPTION

Cause: Role cannot have a privilege with the grant option.

Action: Perform the grant without the grant option.

ORA-01927: cannot REVOKE privileges you did not grant

Cause: You can only revoke privileges you granted.

Action: Don't revoke these privileges.

ORA-01928: GRANT option not granted for all privileges

Cause: In order to grant a privilege, you must first have the privilege with the grant option.

Action: Obtain the privilege with the grant option and try again.

ORA-01929: no privileges to GRANT

Cause: "ALL" was specified but the user doesn't have any privileges with the grant option.

Action: Don't grant privileges on that object.

ORA-01930: auditing the object is not supported

Cause: The AUDIT or NOAUDIT commands were specified for an object that could not be audited.

Action: Do not use the AUDIT command on the object.

ORA-01931: cannot grant string to a role

Cause: An attempt to grant privileges to a role failed. UNLIMITED TABLESPACE, REFERENCES, INDEX, Administrative Privileges like SYSDBA, SYSOPER, SYSASM, SYSBACKUP, SYSDG, SYSKM, and SYSRAC cannot be granted to a role.

Action: Grant privilege directly to the user. For administrative privilege grants, some additional restrictions apply : * SYSBACKUP, SYSDG or SYSKM administrative privileges can be granted only when the password file is in format "12" or higher. * SYSASM administrative privilege can be granted, only when connected to an ASM instance. * SYSRAC administrative privilege cannot be granted to a user because only operating system authentication is supported for SYSRAC privilege.

ORA-01932: ADMIN option not granted for role 'string'

Cause: The operation requires the admin option on the role.

Action: Obtain the grant option and re-try.

ORA-01933: cannot create a stored object using privileges from a role

Cause: An attempt was made to create a stored object using privileges from a role. Stored objects cannot use privileges from roles.

Action: Grant the privileges required to the user directly.

ORA-01934: circular role grant detected

Cause: Roles cannot be granted circularly. Also, a role cannot be granted to itself.

Action: Do not perform the grant.

ORA-01935: missing user or role name

Cause: A user or role name was expected.

Action: Specify a user or role name.

ORA-01936: cannot specify owner when creating users or roles

Cause: Users and roles do not have owners.

Action: Don't specify an owner.

ORA-01937: missing or invalid role name

Cause: A valid role name was expected.

Action: Specify a valid role name.

ORA-01938: IDENTIFIED BY must be specified for CREATE USER

Cause: Cannot create a user without specifying a password or "IDENTIFIED EXTERNALLY" for ASM instance.

Action: Specify one of the password clauses.

ORA-01939: only the ADMIN OPTION can be specified

Cause: System privileges and roles can only be granted with the admin option. The grant option cannot be used with system privileges and roles. The delegate option cannot be used with system privileges.

Action: Specify the admin option.

ORA-01940: cannot drop a user that is currently connected

Cause: Attempt was made to drop a user that is currently logged in.

Action: Make sure user is logged off, then repeat command.

ORA-01941: SEQUENCE keyword expected

Cause: keyword missing

Action: supply missing keyword

ORA-01942: IDENTIFIED BY and EXTERNALLY cannot both be specified

Cause: A user cannot be specified to have and not have a password.

Action: Specify only one of the options.

ORA-01944: Only one IDENTIFIED clause or one NO AUTHENTICATION clause is allowed.

Cause: Either the IDENTIFIED clause was specified twice, or the NO AUTHENTICATION clause was specified twice, or both the IDENTIFIED clause and NO AUTHENTICATION clause were specified together.

Action: Specify only one IDENTIFIED clause or one NO AUTHENTICATION clause.

ORA-01945: DEFAULT ROLE[S] already specified

Cause: The default roles clause has been given twice.

Action: Use only on default role clause.

ORA-01946: DEFAULT TABLESPACE already specified

Cause: The default tablespace clause has been given twice.

Action: Use only one default tablespace clause.

ORA-01947: TEMPORARY TABLESPACE already specified

Cause: The temporary tablespace clause has been given twice.

Action: Use only one temporary tablespace clause.

ORA-01948: identifier's name length (string) exceeds maximum (string)

Cause: A name has been specified that is too long. For example, dbms_session.is_role_enabled() specifies a role name that is too long.

Action: Change the application or command to use a correct identifier.

ORA-01949: ROLE keyword expected

Cause: The role keyword is required here.

Action: Specify the role keyword.

ORA-01950: no privileges on tablespace 'string'

Cause: User does not have privileges to allocate an extent in the specified tablespace.

Action: Grant the user the appropriate system privileges or grant the user space resource on the tablespace.

ORA-01951: ROLE 'string' not granted to 'string'

Cause: The role you tried to revoke was not granted to the user.

Action: Don't try to revoke a privilege which is not granted.

ORA-01952: system privileges not granted to 'string'

Cause: A system privilege you tried to revoke was not granted to the user.

Action: Make sure the privileges you are trying to revoke are granted.

ORA-01953: command no longer valid, see ALTER USER

Cause: The syntax for assigning quotas on tablespaces has changed. The ALTER USER command is now used to perform the functionality

Action: Use the alter user command instead.

ORA-01954: DEFAULT ROLE clause not valid for CREATE USER

Cause: Default roles cannot be specified for create user.

Action: Grant and alter the user's default roles after creating the user.

ORA-01955: DEFAULT ROLE 'string' not granted to user

Cause: The user being altered does not have the specified role granted directly to the user. Note, sub-roles cannot be used in the default role clause.

Action: Grant the role to the user.

ORA-01956: invalid command when OS_ROLES are being used

Cause: This command cannot be used when the INIT.ORA parameter OS_ROLES is TRUE.

Action: Grant the role to the user in the operating system.

ORA-01957: Keyword MIN or MAX expected, not found

Cause: The keyword MIN or MAX was expected as an argument.

Action: Enter the keyword MIN or MAX and retry the operation.

ORA-01958: Must supply an integer for the LAYER option

Cause: An item other than an integer was entered for the LAYER option.

Action: Enter an integer for the LAYER option and retry the operation.

ORA-01959: Must supply an integer for the OPCODE option

Cause: An item other than an integer was entered for the OPCODE option. The value in ALTER SYSTEM DUMP ... OPCODE value must be an integer.

Action: Enter an integer for the OPCODE option and retry the operation. For more information on the OPCODE option, see the Oracle9i SQL Reference.

ORA-01960: Invalid dump logfile option

Cause: An invalid option was entered for the ALTER SYSTEM DUMP LOGFILE option command.

Action: For a list of valid options for DUMP LOGFILE, see the Oracle9i SQL Reference.

ORA-01961: Invalid dump option

Cause: An invalid option was entered for the ALTER SYSTEM DUMP statement.

Action: Enter a valid option for ALTER SYSTEM DUMP. Examples of valid options are LOGFILE and UNDO. For more information on the DUMP option, see the Oracle9i SQL Reference.

ORA-01962: Must specify a file number or log sequence number

Cause: An invalid file number or log sequence number was specified.

Action: Enter a valid file number or log sequence number and retry the operation. For more information on valid file and log sequence numbers, see the Oracle9i SQL Reference.

ORA-01963: Must specify a block number

Cause: An invalid block number was specified.

Action: Enter a valid block number and retry the operation. For more information on valid block numbers, see the Oracle9i SQL Reference.

ORA-01964: Must specify a time for the TIME option

Cause: A value was entered for the TIME option that could not be interpreted as a date.

Action: Enter a valid date. For more information on the TIME option, see the Oracle9i SQL Reference.

ORA-01965: Must specify a PERIOD

Cause: A period was missing between the file number and the block number.

Action: Enter a period between the file number and the block number, then retry the operation. For more information on file numbers and block numbers, see the Oracle9i SQL Reference.

ORA-01966: DEFAULT COLLATION already specified

Cause: The default collation clause was specified twice.

Action: Use only one default collation clause.

ORA-01967: invalid option for CREATE CONTROLFILE

Cause: An invalid CREATE CONTROLFILE option is present.

Action: Specify only valid CREATE CONTROLFILE options.

ORA-01968: Only specify RESETLOGS or NORESETLOGS once

Cause: The keyword RESETLOGS or NORESETLOGS has appeared more than once

Action: Be sure to specify RESETLOGS or NORESETLOGS exactly once.

ORA-01969: You must specify RESETLOGS or NORESETLOGS

Cause: Missing a RESETLOGS or a NORESETLOGS

Action: Be sure to specify RESETLOGS or NORESETLOGS exactly once.

ORA-01970: You must specify a database name for CREATE CONTROLFILE

Cause: Missing a database name

Action: Retype CREATE CONTROLFILE command with the DATABASE keyword.

ORA-01971: Illegal ALTER TRACING option

Cause: An invalid ALTER TRACING option was present.

Action: Specify only valid ALTER TRACING options. Examples of valid options are ENABLE and DISABLE. For more information, see the Oracle9i SQL Reference.

ORA-01972: Must specify a string for ALTER TRACING ENABLE or DISABLE

Cause: Something other than a valid identifier was specified for ALTER TRACING ENABLE or DISABLE.

Action: Specify a valid identifier for ALTER TRACING ENABLE or DISABLE and retry the operation. For more information on valid identifiers, see the Oracle9i SQL Reference.

ORA-01973: Missing change number

Cause: Keyword "CHANGE" found but change number not specified.

Action: Fix command line and resubmit

ORA-01974: Illegal archive option

Cause: Not a valid option to the "ALTER SYSTEM ARCHIVE" command

Action: Check the syntax of the command and retry it.

ORA-01975: Illegal character in change number string

Cause: An invalid change number was supplied.

Action: Resubmit the command with a valid change number.

ORA-01976: Missing change number

Cause: A change number was required, but not supplied.

Action: Check the syntax of the command, supply a change number where needed, then retry the command.

ORA-01977: Missing thread number

Cause: Keyword "THREAD" found but thread number not specified.

Action: Fix command line and resubmit

ORA-01978: Missing sequence number

Cause: Keyword "SEQUENCE" found but sequence number not specified.

Action: Fix command line and resubmit

ORA-01979: missing or invalid password for role 'string'

Cause: An attempt was made to enable a role without giving the proper password.

Action: Use the IDENTIFIED BY clause in SET ROLE to specify the correct password.

ORA-01980: error during OS ROLE initialization

Cause: An OS error occurred while loading a users OS ROLES.

Action: Check the OS error.

ORA-01981: CASCADE CONSTRAINTS must be specified to perform this revoke

Cause: During this revoke some foreign key constraints will be removed. In order to perform this automatically, CASCADE CONSTRAINTS must be specified.

Action: Remove the constraints or specify CASCADE CONSTRAINTS.

ORA-01982: invalid audit option for table specified

Cause: An invalid AUDIT or NOAUDIT option, like REFERENCE or EXECUTE, was specified for a table.

Action: Validate the audit option for the table and retry the operation.

ORA-01983: invalid AUDIT or NOAUDIT operation while specifying ON DEFAULT

Cause: An invalid AUDIT or NOAUDIT operation was requested for the object (like REFERENCES) while specifying the ON DEFAULT clause.

Action: Correct the statement and retry the operation.

ORA-01984: invalid audit option specified for procedure, package, or function

Cause: An invalid AUDIT or NOAUDIT option was specified for the procedure, package, or function while using the DEFAULT clause.

Action: Only EXECUTE is allowed as valid audit option for procedures, packages, and functions.

ORA-01985: cannot create user as LICENSE_MAX_USERS parameter exceeded

Cause: Maximum users in the database license limit exceeded.

Action: Increase license limit.

ORA-01986: OPTIMIZER_GOAL is obsolete

Cause: An obsolete parameter, OPTIMIZER_GOAL, was referenced.

Action: Use the OPTIMIZER_MODE parameter.

ORA-01987: client os username is too long

Cause: A client's os username is too long for the os logon to succeed.

Action: Use a shorter os username.

ORA-01988: remote os logon is not allowed

Cause: Remote os login attempted when not allowed.

Action: Use a local client, or use the remote_os_authent system parameter to turn on remote os logon.

ORA-01989: role 'string' not authorized by operating system

Cause: The os role does not exist, is not granted to you, or you did not provide the correct password.

Action: Re-attempt the SET ROLE with a valid os role and password, if necessary.

ORA-01990: Error opening password file string.

Cause: The password file did not exist or was inaccessible.

Action: Check that the file exists and is accessible, and then retry.

ORA-01991: invalid password file 'string'

Cause: The specified password file name is invalid.

Action: Specify a correct password file name.

ORA-01992: error closing password file 'string'

Cause: The password file could not be closed because of an operating system error or because an authentication action failed.

Action: Check for the above causes and correct as necessary.

ORA-01993: Error writing to password file string.

Cause: The password file could not be written to because of an operating system error or because an authentication action failed.

Action: Check for an authentication or operating system error with the password file, correct, and retry.

ORA-01994: Password file missing or disabled

Cause: The operation failed either because the INIT.ORA parameter REMOTE_LOGIN_PASSWORDFILE was set to NONE or else because the password file was missing.

Action: Create the password file using the orapwd tool and set the INIT.ORA parameter REMOTE_LOGIN_PASSWORDFILE to EXCLUSIVE.

ORA-01995: error reading password file 'string'

Cause: An operating system error occurred when trying to read the password file.

Action: Fix the operating system error.

ORA-01996: GRANT failed: password file 'string' is full

Cause: The grant failed when a user could not be added to the password file, because all available slots in it were used already.

Action: Either create a larger password file or free up slots in the password file by revoking the SYSOPER and SYSDBA privileges from some of the remote users. You can determine which remote users are valid and their privileges by issuing the following query in SQL*DBA: SELECT * FROM V$REMOTE_USERS;

ORA-01997: GRANT failed: user 'string' is IDENTIFIED GLOBALLY

Cause: An attempt was made to grant administrative privileges to a user account, which was created as IDENTIFIED GLOBALLY. This is only allowed in an ASM; not in a database instance.

Action: When connected to a database instance, try granting the administrative privilege to a user whose account is managed by the database (as opposed to managed by a directory server, as is the case with accounts which are IDENTIFIED GLOBALLY).

ORA-01998: REVOKE failed: user SYS always has SYSOPER and SYSDBA

Cause: An attempt was made to revoke SYSOPER or SYSDBA administrative privileges from the SYS user which is not allowed.

Action: Try revoking administrative privilege from users other than SYS.

ORA-01999: password file cannot be updated in SHARED mode

Cause: An attempt was made to perform one of the following operations, but none of these operations are allowed while the INIT.ORA parameter REMOTE_LOGIN_PASSWORDFILE is set to SHARED and password file is in READ ONLY mode. - Attempting to change password for an administrative privileged user either using ALTER USER DDL statement or SQL*Plus PASSWORD command, or OCIPasswordChange API. - Attempting to grant administrative privileges to a user. - Attempting to revoke administrative privileges from a user. - Attempting to drop an administrative privileged user. If the password file was created in 12.2 format, then the following additional operations are disallowed when REMOTE_LOGIN_PASSWORDFILE parameter is set to SHARED. - An ALTER USER DDL statement making changes to an administrative privileged user's account status, password profile assignment, identification type, password expiration timestamp. - An ALTER PROFILE or DROP PROFILE CASCADE DDL statement for a password profile, which is assigned to an administrative privileged user.

Action: Set the INIT.ORA parameter to EXCLUSIVE, shutdown and restart the database instance and retry the operation.

ORA-02000: missing string keyword

Cause: The statement entered requires the missing keyword.

Action: Use the specified keyword.

ORA-02001: user SYS is not permitted to create indexes with freelist groups

Cause: user tried to create an index while running with sys authorization.

Action: Indexes cannot be created with SYS authorization. Either do not create the index or switch to USER authorization.

ORA-02002: error while writing to audit trail

Cause: The auditing facility was unable to write to the audit trail. SQL statements that were being audited may also fail. This error occurred because of one of the following reasons: 1. Designated audit tablespace ran out of disk space. 2. Operating system mount point where the audit files were located did not have enough free space to generate new files. 3. Some other underlying error caused the audit write failure.

Action: Choose the action corresponding to the cause as numbered: 1. Add space to the designated audit tablespace. 2. Purge old audit records from the audit trail. 3. Check the following error to see if there is any information about the failure. Correct the error, if possible, and try the operation again. If the error occurs again, contact Oracle Support Services.

ORA-02003: invalid USERENV parameter

Cause: An invalid parameter was specified for the USERENV function.

Action: Specify one of the allowable parameters TERMINAL, SESSIONID, ENTRYID, or NLS_LANG.

ORA-02004: security violation

Cause: This error code was never returned to a user. It was used as a value for column, UNIFIED_AUDIT_TRAIL.RETURN_CODE, to signal that a security violation occurred.

Action: None

ORA-02005: implicit (-1) length not valid for this bind or define data type

Cause: A negative length for the define variable was passed to a define function.

Action: An explicit, non-negative, length parameter must be passed.

ORA-02006: invalid packed decimal format string

Cause: A packed decimal datatype was passed to a bind or define function, and the format string parameter was either not present or invalid.

Action: A valid format string parameter must be passed for a packed decimal variable. Check the programming manual for the definition of a packed decimal format string.

ORA-02007: can't use ALLOCATE or DEALLOCATE options with REBUILD

Cause: Allocate or deallocate storage and rebuild index are not compatible.

Action: Choose one or the other.

ORA-02008: non-zero scale specified for nonnumeric column

Cause: A scale factor was specified for a bind or define of a non-numeric variable.

Action: Set the scale factor to zero, then retry the operation.

ORA-02009: the size specified for a file must not be zero

Cause: A value of zero was specified in a SIZE or RESIZE clause of a file specification.

Action: Use correct syntax, or, if allowed, omit the SIZE or RESIZE clause.

ORA-02010: missing host connect string

Cause: A quoted character string did not follow the keyword USING in the USING clause of a CREATE DATABASE LINK statement.

Action: Specify the host connect string, then retry the operation.

ORA-02011: duplicate database link name

Cause: The database link name specified in a CREATE DATABASE LINK statement already existed.

Action: Either specify a new name or drop the existing link.

ORA-02012: missing USING keyword

Cause: The keyword USING did not follow the CONNECT TO clause in a CREATE DATABASE LINK statement.

Action: Specify the USING clause after the CONNECT TO clause.

ORA-02013: missing CONNECT keyword

Cause: The keyword CONNECT did not follow the database link name in a CREATE DATABASE LINK statement.

Action: Specify the CONNECT clause after the database link name.

ORA-02014: cannot select FOR UPDATE from view with DISTINCT, GROUP BY, etc.

Cause: An attempt was made to select FOR UPDATE from a view which had not been merged because the view used syntax (for example, DISTINCT or GROUP BY) preventing the merge, or because of initialization file parameter settings.

Action: Determine the reason the view will not merge and, if possible, make changes so that it can.

ORA-02015: cannot select FOR UPDATE from remote table

Cause: An attempt was made to select FOR UPDATE on a remote table (directly, or via a view) that had abstract data type columns, and the view or select list contained abstract data type columns or non-column items.

Action: To attempt a select FOR UPDATE, use a view or select list that consists only of base columns from the remote table, none of which may be abstract data type columns.

ORA-02016: cannot use a subquery in a START WITH on a remote database

Cause: An attempt was made to use a subquery in a START WITH clause. Such a subquery is not currently permitted if the table in the FROM clause of the tree query is in a remote database.

Action: It is necessary to connect directly to the remote database before using a subquery in the START WITH clause.

ORA-02017: integer value required

Cause: The specified value must be an integer.

Action: Specify an appropriate integer value, then retry the operation.

ORA-02018: database link of same name has an open connection

Cause: The user was currently connected to a PUBLIC database link with the same name as the database link name specified in a CREATE or DROP DATABASE LINK statement.

Action: Close the cursors that use the PUBLIC database link.

ORA-02019: connection description for remote database not found

Cause: The referenced database link did not exist.

Action: Create the database link before running the SQL statement.

ORA-02020: too many database links in use

Cause: The current session has exceeded the INIT.ORA open_links maximum.

Action: Increase the open_links limit, or free up some open links by committing or rolling back the transaction and canceling open cursors that reference remote databases.

ORA-02021: DDL operations are not allowed on a remote database

Cause: An attempt was made to use a DDL operation on a remote database. For example, "CREATE TABLE tablename@remotedbname ...".

Action: To alter the remote database structure, you must connect to the remote database with the appropriate privileges.

ORA-02022: remote statement has unoptimized view with remote object

Cause: The local view is unoptimized and contains references to objects at the remote database and the statement must be executed at the remote database.

Action: Create a similar view on the remote database and modify the violating view in the SQL statement with the new view@remote.

ORA-02023: START WITH or CONNECT BY predicate cannot be evaluated by remote data base

Cause: The statement contained a tree query on a remote database, and the tree query's START WITH or CONNECT BY predicate contained a term that could not be evaluated at the remote database. Such terms included calls to user functions, calls to USERENV, and references to ROWID.

Action: Remove the disallowed term, directly connect, or log on to the remote database.

ORA-02024: database link not found

Cause: Database link to be dropped is not found in dictionary

Action: Correct the database link name

ORA-02025: all tables in the SQL statement must be at the remote database

Cause: The user's SQL statement references tables from multiple databases. The remote database is not Oracle V7 or above, and can perform updates only if it can reference all tables in the SQL statement.

Action: Remote updates can be performed only if all databases in the SQL statement are Oracle Servers. Update the earlier version databases in a separate statement.

ORA-02026: missing LINK keyword

Cause: keyword missing

Action: supply missing keyword

ORA-02027: multi-row UPDATE of LONG column is not supported

Cause: A bind variable with length greater than 4000 bytes is being used to update a column, and the update statement updates more than one row.

Action: You may only update a single row with such a bind variable.

ORA-02028: fetching an exact number of rows is not supported by the server

Cause: The server does not support UPIALL, so the fetch of an exact number of rows cannot be emulated on the user side.

Action: Connect to a valid server or do not use an exact fetch.

ORA-02029: missing FILE keyword

Cause: keyword missing

Action: supply missing keyword

ORA-02030: can only select from fixed tables/views

Cause: An attempt is being made to perform an operation other than a retrieval from a fixed table/view.

Action: You may only select rows from fixed tables/views.

ORA-02031: no ROWID for fixed tables or for external-organized tables

Cause: An attempt is being made to access rowid from a fixed table or from a external-organized table.

Action: Do not access ROWID from a fixed table or from a external-organized table.

ORA-02032: clustered tables cannot be used before the cluster index is built

Cause: User attempted to perform a DML statement on a clustered table for which no cluster index has yet been created.

Action: Create the cluster index.

ORA-02033: a cluster index for this cluster already exists

Cause: A cluster index already exists for the cluster.

Action: None

ORA-02034: speed bind not permitted

Cause: Speed bind not allowed with supplied bind variables. Trapped internally by the system.

Action: None

ORA-02035: illegal bundled operation combination

Cause: User requested that the UPI bundled execution call perform an an illegal combination of operations.

Action: See documentation for legal operation combinations.

ORA-02036: too many variables to describe with automatic cursor open

Cause: User requested that the UPI bundled execution call perform automatic cursor open and close on a describe operation. There were too many select-list items or bind variables to do this.

Action: open and close cursor explicitly

ORA-02037: uninitialized speed bind storage

Cause: User attempted a UPI bundled execution call containing a standalone execute operation without first performing a UPI bundled execution call containing a bind operation.

Action: perform a UPI bundled execution call with bind before performing a bundled execution call with execute

ORA-02038: define is not allowed for array type

Cause: User attempted to define a select list variable of type "array". Arrays may only serve as host bind variables.

Action: Correct the offending code.

ORA-02039: bind by value is not allowed for array type

Cause: User attempted to bind an array host variable by value. Arrays may only be bound by reference.

Action: Correct the offending code.

ORA-02040: remote database string does not support two-phase commit

Cause: the database was potentially updated but does not support prepare to commit (as determined by its logon transaction traits). The transaction was rolled back.

Action: Do not attempt to update the remote database unless it is the only database updated in one transaction.

ORA-02041: client database did not begin a transaction

Cause: internal error

Action: contact support

ORA-02042: too many distributed transactions

Cause: the distributed transaction table was full because too many distributed transactions were active.

Action: Run fewer transactions. If you are sure you don't have too many concurrent distributed transactions, this indicates an internal error and support should be notified. Instance shutdown/restart would be a work-around.

ORA-02043: must end current transaction before executing string

Cause: a transaction is in progress and one of the following commands commands is issued: COMMIT FORCE, ROLLBACK FORCE, or ALTER SYSTEM ENABLE DISTRIBUTED RECOVERY in single process mode.

Action: COMMIT or ROLLBACK the current transaction and resubmit command.

ORA-02044: transaction manager login denied: transaction in progress

Cause: a remote transaction manager tried to log in while a distributed transaction is in progress.

Action: end the current transaction (this is a protocol error from a remote transaction manager)

ORA-02045: too many local sessions participating in global transaction

Cause: too many sessions at this site for this transaction.

Action: use an existing link so another session need not be created.

ORA-02046: distributed transaction already begun

Cause: internal error or error in external transaction manager. A server session received a begin_tran RPC before finishing with a previous distributed tran.

Action: Contact Oracle Support Services.

ORA-02047: cannot join the distributed transaction in progress

Cause: Either a transaction is in progress against a remote database that does not fully support two phase commit, and an update is attempted on another database, or updates are pending and and an attempt is made to update a different database that does not fully support two phase commit.

Action: complete the current transaction and then resubmit the update request.

ORA-02048: attempt to begin distributed transaction without logging on

Cause: client program must issue a distributed transaction login.

Action: contact support.

ORA-02049: timeout: distributed transaction waiting for lock

Cause: "The number of seconds specified in the distributed_lock_timeout initialization parameter were exceeded while waiting for a lock or for a begin transaction hash collision to end."

Action: Treat this timeout as a deadlock. Roll back the transaction and try again.

ORA-02050: transaction string rolled back, some remote DBs may be in-doubt

Cause: network or remote failure in 2PC.

Action: Notify operations; remote DBs will automatically re-sync when the failure is repaired.

ORA-02051: another session or branch in same transaction failed or finalized

Cause: A session at the same site with the same global transaction ID failed. The failure could also be caused by an application error if an attempt was made to update the database while another tightly coupled transaction branch with the same global transaction ID was finalized or aborted.

Action: No action necessary as the transaction will be automatically recovered. In the case of an application error, make sure there are no more updates to the database once the transaction manager has started two-phase commit for tightly coupled distributed transaction.

ORA-02052: remote transaction failure at string

Cause: error in remote transaction at given DBLINK

Action: retry

ORA-02053: transaction string committed, some remote DBs may be in-doubt

Cause: network or remote failure in 2PC.

Action: Notify operations; remote DBs will automatically re-sync when the failure is repaired.

ORA-02054: transaction string in-doubt

Cause: network or remote failure in 2PC.

Action: Notify operations; DBs will automatically re-sync when the failure is repaired. Monitor pending_trans$ for final outcome.

ORA-02055: distributed update operation failed; rollback required

Cause: a failure during distributed update operation may not have rolled back all effects of the operation. Since some sites may be inconsistent, the transaction must roll back to a savepoint or entirely

Action: rollback to a savepoint or rollback transaction and resubmit

ORA-02056: 2PC: string: bad two-phase command number string from string

Cause: two-phase commit protocol error.

Action: recovery of transaction attempted. Monitor pending_trans$ table to ensure correct resolution. Contact support.

ORA-02057: 2PC: string: bad two-phase recovery state number string from string

Cause: internal error in two-phase recovery protocol

Action: contact support

ORA-02058: no prepared transaction found with ID string

Cause: no transaction with local_tran_id or global_tran_id found in the pending_trans$ table in prepared state.

Action: check the pending_trans$ table.

ORA-02059: ORA-2PC-CRASH-TEST-string in commit comment

Cause: This is a special comment used to test the two phase commit.

Action: Don't use this special comment (%s a number 1-10)

ORA-02060: select for update specified a join of distributed tables

Cause: tables in a join with the for update clause must reside at the same DB.

Action: Joined tables in a SELECT statement with the FOR UPDATE clause must reside at the same database. Simplify the SELECT... FOR UPDATE statement so that it joins only tables in the same database.

ORA-02061: lock table specified list of distributed tables

Cause: tables in a lock table statement must reside at the same DB.

Action: issue multiple lock table commands.

ORA-02062: distributed recovery received DBID string, expected string

Cause: a database link at a coordinator no longer points to the expected database. Link may have been redefined, or a different DB mounted.

Action: restore link definition or remote database.

ORA-02063: preceding stringstring from stringstring

Cause: an Oracle error was received from a remote database link.

Action: refer to the preceding error message(s)

ORA-02064: distributed operation not supported

Cause: One of the following unsupported operations was attempted: 1. array execute of a remote update with a subquery that references a dblink, or 2. an update of a long column with bind variable and an update of a second column with a subquery that both references a dblink and a bind variable, or 3. a commit is issued in a coordinated session from an RPC procedure call with OUT parameters or function call.

Action: simplify remote update statement

ORA-02065: illegal option for ALTER SYSTEM

Cause: The option specified for ALTER SYSTEM is not supported

Action: refer to the user manual for option supported

ORA-02066: missing or invalid DISPATCHERS text

Cause: A character string literal was expected, but not found, following ALTER SYSTEM SET DISPATCHERS

Action: place the string literal containing the dispatcher's specification after ALTER SYSTEM SET DISPATCHERS

ORA-02067: transaction or savepoint rollback required

Cause: A failure (typically a trigger or stored procedure with multiple remote updates) occurred such that the all-or-nothing execution of a previous Oracle call cannot be guaranteed.

Action: rollback to a previous savepoint or rollback the transaction and resubmit.

ORA-02068: following severe error from stringstring

Cause: A severe error (disconnect, fatal Oracle error) received from the indicated database link. See following error text.

Action: Contact the remote system administrator.

ORA-02069: global_names parameter must be set to TRUE for this operation

Cause: A remote mapping of the statement is required but cannot be achieved because global_names should be set to TRUE for it to be achieved

Action: Issue alter session set global_names = true if possible

ORA-02070: database stringstring does not support string in this context

Cause: The remote database does not support the named capability in the context in which it is used.

Action: Simplify the SQL statement.

ORA-02071: error initializing capabilities for remote database string

Cause: Could not load a remote-specified capability table.

Action: Contact support for the remote SQL*Connect product.

ORA-02072: distributed database network protocol mismatch

Cause: This should never happen between different PRODUCTION releases of ORACLE, but may happen between alpha and beta releases, for example.

Action: Upgrade the older release.

ORA-02073: sequence numbers not supported in remote updates

Cause: Sequence numbers may not be used in INSERTS, UPDATES, or DELETES on remote tables.

Action: Perform the operation without specifying a sequence number.

ORA-02074: cannot string in a distributed transaction

Cause: A commit or rollback was attempted from session other than the parent of a distributed transaction.

Action: Only commit or rollback from the parent session.

ORA-02075: another instance changed state of transaction string

Cause: A commit force or rollback force was issued from a session in another instance.

Action: Check if another Oracle instance is performing recovery of pending transactions. Query DBA_2PC_PENDING to determine the new state of the transaction.

ORA-02076: sequence not co-located with updated table or long column

Cause: all referenced sequences must be co-located with the table with the long column.

Action: Correct the problem and then reissue the statement.

ORA-02077: selects of long columns must be from co-located tables

Cause: if a select returns long columns from multiple tables, all the tables must be co-located

Action: Correct the problem, then reissue the statement.

ORA-02078: invalid setting for ALTER SYSTEM FIXED_DATE

Cause: An invalid value was used.

Action: n/a

ORA-02079: cannot join a committing distributed transaction

Cause: Once a transaction branch is prepared, no more new transaction branches are allowed to start, nor is the prepared transaction branch allowed to be joined.

Action: Check the application code as this is an XA protocol violation.

ORA-02080: database link is in use

Cause: a transaction is active or a cursor is open on the database link given in the alter session close database link link command.

Action: commit or rollback, and close all cursors

ORA-02081: database link is not open

Cause: dblink given is not currently open.

Action: Resolve network problems or contact the remote database administrator to determine if the remote database's problem has been fixed. Contact the local database administrator to determine if network problems have been resolved. Wait until the link is open and try the operation again.

ORA-02082: a loopback database link must have a connection qualifier

Cause: An attempt was made to create a database link with the same name as the current database.

Action: a loopback database link needs a trailing qualifier, for example MYDB.EXAMPLE.COM@INST1 - the '@INST1' is the qualifier

ORA-02083: database name has illegal character 'string'

Cause: supplied database name can contain only A-Z, 0-9, '_', '#', '$' '.' and '@' characters.

Action: Specify a valid database name.

ORA-02084: database name is missing a component

Cause: supplied database name cannot contain a leading '.', trailing '.' or '@', or two '.' or '@' in a row.

Action: Specify the full database name.

ORA-02085: database link string connects to string

Cause: a database link connected to a database with a different name. The connection is rejected.

Action: create a database link with the same name as the database it connects to, or set global_names=false.

ORA-02086: database (link) name is too long

Cause: database/database link name can have at most 128 characters.

Action: Specify the correct database or database link name or specify a name with fewer characters.

ORA-02087: object locked by another process in same transaction

Cause: A database link is being used in the cluster database environment that loops back to the same instance. One session is trying to convert a lock that was obtained by the other session.

Action: Get the more restrictive lock first. For example, if session 1 gets a share lock and session 2 gets an exclusive lock on the same object, get the exclusive lock first. Or, simply use the same session to access the object.

ORA-02088: distributed database option not installed

Cause: Remote and distributed updates and transactions are a separately priced option in ORACLE V7.

Action: Contact Oracle Support Services about obtaining the distributed database option.

ORA-02089: COMMIT is not allowed in a subordinate session

Cause: COMMIT was issued in a session that is not the two-phase commit global coordinator.

Action: Issue commit at the global coordinator only.

ORA-02090: network error: attempted callback+passthru

Cause: internal error.

Action: Contact Oracle Support Services.

ORA-02091: transaction rolled back

Cause: Also see error 2092. If the transaction is aborted at a remote site then you will only see 2091; if aborted at host then you will see 2092 and 2091.

Action: Add rollback segment and retry the transaction.

ORA-02092: out of transaction table slots for distributed transaction

Cause: The transaction is assigned to the system rollback segment and is trying to get into the PREPARED state, but the required number of non-PREPARED slots are not available, hence the transaction is rolled back.

Action: Add a rollback segment and retry the transaction.

ORA-02093: TRANSACTIONS_PER_ROLLBACK_SEGMENT(string) more than maximum possible(string)

Cause: Value of parameter specified is greater than allowed on this port.

Action: Use default or reduce it to less than max.

ORA-02094: replication option not installed

Cause: The replication option was not installed at this site. Updatable materialized views, deferred RPCs, and other replication features were, therefore, unavailable.

Action: Install the replication option. The replication option is not part of the Oracle Server product and must be purchased separately. Contact an Oracle Sales representative if the replication option needs to be purchased.

ORA-02095: specified initialization parameter cannot be modified

Cause: The specified initialization parameter is not modifiable

Action: Check the Oracle9i Database Administrator's Guide for information about under what scope the parameter may be modified. For more information about modifying an initialization parameter, see the Oracle9i Database Reference.

ORA-02096: specified initialization parameter is not modifiable with this option

Cause: Though the initialization parameter is modifiable, it cannot be modified using the specified command.

Action: Check the DBA guide for information about under what scope the parameter may be modified

ORA-02097: parameter cannot be modified because specified value is invalid

Cause: Though the initialization parameter is modifiable, the modified value is not acceptable to the parameter.

Action: Check the DBA guide for range of acceptable values for this parameter.

ORA-02098: error parsing index-table reference (:I)

Cause: An incorrect index-table (:I) syntax was encountered.

Action: This syntax is for oracle internal use only.