Oracle8 Error Messages

00000-00100: Oracle Server
This section lists the messages generated by the Oracle Server.

If you are using Trusted Oracle, see the Trusted Oracle documentation for information about error messages in that environment.

ORA-00000: normal, successful completion
Cause: An operation has completed normally, having met no exceptions.

Action: No action required.

ORA-00001: unique constraint table.column violated
Cause: An update or insert statement attempted to insert a duplicate key.

Action: Either remove the unique restriction or do not insert the key.

ORA-00017: session requested to set trace event
Cause: The current session was requested to set a trace event by another session.

Action: This is used internally; no action required.

ORA-00018: maximum number of sessions exceeded
Cause: An operation requested a resource that was unavailable. The maximum number of sessions is specified by the initialization parameter SESSIONS. When this maximum is reached, no more requests are processed.

Action: Try the operation again in a few minutes. If this message occurs often, shut down Oracle, increase the SESSIONS parameter in the initialization parameter file, and restart Oracle.

ORA-00019: maximum number of session licenses exceeded
Cause: All licenses are in use.

Action: Call customer support before increasing the number of session licenses.

ORA-00020: maximum number of processes num exceeded
Cause: An operation requested a resource that was unavailable. The maximum number of processes is specified by the initialization parameter PROCESSES. When this maximum is reached, no more requests are processed.

Action: Try the operation again in a few minutes. If this message occurs often, shut down Oracle, increase the PROCESSES parameter in the initialization parameter file, and restart Oracle.

ORA-00021: session attached to some other process; cannot switch session
Cause: The user session is currently being used by someone else.

Action: Do not execute calls in a user session concurrently.

ORA-00022: invalid session id; access denied
Cause: Either the session specified does not exist, or the caller does not have the privilege to access it.

Action: Specify a valid session ID. This requires ownership of the session id or the CHANGE_USER privilege.

ORA-00023: session references process' private memory; cannot detach session
Cause: An attempt was made to detach the current session, which contains references to the process' private memory.

Action: A session may contain references to process memory (PGA) if it has an open network connection, a very large context area, or operating system privileges. To allow the detach, it may be necessary to close the session's database link or cursors. Detaching a session with operating system privileges is always disallowed.

ORA-00024: logins from more than one process not allowed in single-process mode
Cause: An attempt was made to log in more than once from different processes after Oracle had been started in single-process mode.

Action: When Oracle is running in single-process mode, out of the previous process before trying to log in from another one.

ORA-00025: failed to allocate num
Cause: An allocation failed because Oracle ran out of memory.

Action: Restart Oracle with a larger SGA heap.

ORA-00026: missing or invalid session id
Cause: The session ID string specified in the ALTER SYSTEM KILL SESSION command was invalid, or no string was specified.

Action: Retry the command with a valid session ID.

ORA-00027: cannot kill current session
Cause: An attempt was made to kill the current session with the ALTER SYSTEM KILL SESSION command.

Action: If it is necessary to kill the current session, do so from another session.

ORA-00028: your session has been killed
Cause: A privileged user killed the session and it is no longer logged in to the database.

Action: Contact the database administrator. The administrator may be attempting to perform an operation that requires users to be logged out. When the database administrator announces that the database is available, log in and resume work.

ORA-00029: session is not a user session
Cause: The session ID specified in an ALTER SYSTEM KILL SESSION command was not a user session. For example, the session may be recursively started.

Action: Retry the command with a valid session ID.

ORA-00030: user session ID does not exist
Cause: The user session ID no longer exists, probably because the session was logged out.

Action: Use a valid session ID.

ORA-00031: session marked for kill
Cause: The session specified in the ALTER SYSTEM KILL SESSION command cannot be killed immediately because the session is involved in a non-interruptible operation. For example, rolling back a transaction or being blocked by a network operation. The session has been marked to be killed as soon as possible after the current operation is done.

Action: No action required. The session will be killed when the operation is completed. Further executions of the ALTER SYSTEM KILL SESSION command may cause the session to be killed sooner.

ORA-00032: invalid session migration password
Cause: The session migration password specified in a session creation call was invalid (probably too long).

Action: Retry with a valid password, less than 30 characters.

ORA-00033: current session has empty migration password
Cause: An attempt was made to detach or clone the current session, and it has an empty migration password. This is not allowed.

Action: Create the session with a non-empty migration password.

ORA-00034: cannot COMMIT or ROLLBACK in current PL/SQL session
Cause: An attempt was made to ROLLBACK from a PL/SQL object (procedure, function, package) in a session where COMMIT and ROLLBACK are disabled by an ALTER SESSION DISABLE COMMIT IN PROCEDURE statement.

Action: Enable COMMITs from PL/SQL in this session or do not attempt a COMMIT or ROLLBACK when disabled.

ORA-00035: LICENSE_MAX_USERS cannot be less than current number of users
Cause: Specified value for LICENSE_MAX_USERS is less than current number of users.

Action: Check the license limit and drop extra users or purchase more licenses.

ORA-00036: maximum number of recursive sql levels num exceeded
Cause: An attempt was made to go more than the specified number of recursive SQL levels was made.

Action: Remove the recursive SQL, possibly a recursive trigger.

ORA-00050: O/S error occurred while obtaining an enqueue. See O/S error
Cause: Could not obtain the operating system resources necessary for an Oracle enqueue. This most often occurs when the user resource quota on the operating system is too low.

Action: Look up the operating system error in the operating system-specific Oracle documentation and perform the needed action.

ORA-00051: time-out occurred while waiting for resource
Cause: This message is usually caused by an instance that has terminated abnormally.

Action: Restart any non-recovered instances.

ORA-00052: maximum number of enqueue resources num exceeded
Cause: An operation requested a resource that was unavailable. The maximum number of enqueue resources is specified by the initialization parameter ENQUEUE_RESOURCES. When this maximum is reached, no more requests are processed.

Action: Try the operation again in a few minutes. If this message occurs often, shut down Oracle, increase the ENQUEUE_RESOURCES parameter in the initialization parameter file, and restart Oracle.

ORA-00053: maximum number of enqueues exceeded
Cause: An operation requested a resource that was unavailable and the enqueue list for the resource had reached its maximum length. If a request is made for a resource that is unavailable, the request is enqueued to wait for the resource. The number of requests that may be queued for a given resource is specified by the initialization parameter ENQUEUE_RESOURCES. When this maximum is reached, no more requests may be added to the enqueue list.

Action: Try the operation again in a few minutes. If this message occurs often, shut down Oracle, increase the ENQUEUE_RESOURCES parameter in the initialization parameter file, and restart Oracle.

ORA-00054: resource busy and acquire with NOWAIT specified
Cause: The NOWAIT keyword forced a return to the command prompt because a resource was unavailable for a LOCK TABLE or SELECT FOR UPDATE command.

Action: Try the command after a few minutes or enter the command without the NOWAIT keyword.

ORA-00055: maximum number of DML locks exceeded
Cause: An operation requested a resource that was unavailable. The maximum number of DML locks is specified by the DML_LOCKS parameter in the initialization parameter file. When this maximum is reached, no more requests are processed.

Action: Try the operation again in a few minutes. If this message occurs often, shut down Oracle, increase the DML_LOCKS parameter in the initialization parameter file, and restart Oracle.

ORA-00056: DDL lock on object "str.name" already held in an incompatible mode
Cause: The attempted lock is incompatible with the DDL lock already held on the object. This usually occurs when attempting to drop a table that has parse locks.

Action: Before attempting to drop a table, check that it has no parse locks. Wait a few minutes before retrying the operation.

ORA-00057: maximum number of temporary table locks exceeded
Cause: The number of temporary tables equals or exceeds the number of temporary table locks. Temporary tables are often created by large sorts.

Action: Increase the TEMPORARY_TABLE_LOCKS parameter and restart Oracle.

ORA-00058: DB_BLOCK_SIZE must be num to mount this database not num
Cause: The DB_BLOCK_SIZE parameter value in the initialization parameter file used to start a database does not match the value used when that database was created. Potential reasons for this mismatch are

mounting the wrong database
using the wrong initialization parameter file
the DB_BLOCK_SIZE value was changed
Action: For one of the above causes, either

mount the correct database
use the correct initialization parameter file
correct the DB_BLOCK_SIZE parameter value
ORA-00059: maximum number of DB_FILES exceeded
Cause: An unavailable resource was requested. The maximum number of datafiles is specified by the DB_FILES parameter in the initialization parameter file. When this maximum is reached, no more requests are processed.

Action: Try again when the resource is freed. If this message occurs often, Oracle must be shut down and restarted after increasing the DB_FILES parameter in the initialization parameter file. If the DB_FILES parameter cannot be changed because it is already set to the MAXDATAFILES parameter value, set at database creation, you must create a new control file.

ORA-00060: deadlock detected while waiting for resource
Cause: Your session and another session are waiting for a resource locked by the other. This condition is known as a deadlock. To resolve the deadlock, one or more statements were rolled back for the other session to continue work.

Action: Either

Enter a ROLLBACK statement and re-execute all statements since the last commit or
Wait until the lock is released, possibly a few minutes, and re-execute the rolled back statements.
ORA-00061: another instance has a different DML_LOCKS setting
Cause: The shared instance being started is using DML locks and the running instances are not, or vice versa.

Action: Either

Do not use DML_LOCKS by setting DML_LOCKS to zero at all instances.
Use DML_LOCKS by setting DML_LOCKS to a positive integer at all instances.
ORA-00062: DML full-table lock cannot be acquired; DML_LOCKS is 0
Cause: The instance was started with the initialization parameter DML_LOCKS set to zero, but the statement being executed needs a full-table lock (S, X, or SRX).

Action: Set DML_LOCKS to a non-zero value, restart the instance, and re-enter the statement.

ORA-00063: LOG_FILES initialization parameter exceeded
Cause: The value of the LOG_FILES initialization parameter was exceeded.

Action: Increase the value of LOG_FILES and warm start Oracle. The value needs to be as large as the highest number log that currently exists rather than just the count of the logs that exist. If this parameter cannot be increased because it would exceed the MAXLOGFILES set at database creation, you must create a new control file first.

ORA-00064: object is too large to allocate on this O/S num, num
Cause: The initialization parameter DB_BLOCK_SIZE is set to a value that calls for more contiguous space than can be allocated on the operating system being used.

Action: Reduce the value of DB_BLOCK_SIZE so that the requested contiguous space is within the capacity of the operating system.

ORA-00065: initialization of FIXED_DATE failed
Cause: An attempt was made to enter a fixed date string that was not in the proper format.

Action: Enter the date string using the format YYYY-MM-DD:HH24:MI:SS.

ORA-00066: LOG_FILES is num but needs to be num to be compatible
Cause: The maximum number of redo log files supported by this instance is not the same as for the other instances. All instances must be able to open all the files any instance can open.

Action: Check that the LOG_FILES initialization parameter is the same for all instances.

ORA-00067: invalid value num for parameter num, must be at least num
Cause: The value for the initialization parameter is invalid.

Action: Choose a value as indicated by the message. Change the value of the LOG_FILES parameter to be compatible.

ORA-00068: invalid value num for parameter num, must be between num and num
Cause: The value for the initialization parameter is invalid.

Action: Choose a value as indicated by the message. Change the value of the LOG_FILES parameter to be compatible.

ORA-00069: cannot acquire lock -- table locks disabled for name
Cause: A command was issued that tried to lock the table indicated in the message. Examples of commands that can lock tables are LOCK TABLE, ALTER TABLE ... ADD (...), and so on.

Action: Use the ALTER TABLE ... ENABLE TABLE LOCK command, and retry the command.

ORA-00070: command name is not valid
Cause: An invalid debugger command was specified.

Action: Type HELP to see the list of available commands.

ORA-00071: process number must be between 1 and num
Cause: An invalid process number was specified.

Action: Specify a valid process number.

ORA-00072: process \
Cause: An invalid process was specified.

Action: Specify a valid process.

ORA-00073: command name takes between num1 and num2 argument(s)
Cause: An incorrect number of arguments was specified.

Action: Specify the correct number of arguments. Type HELP to see the list of commands and their syntax.

ORA-00074: no process has been specified
Cause: No debug process has been specified.

Action: Specify a valid process.

ORA-00075: process \
Cause: The specified process was not logged on to the current instance.

Action: Specify a valid process.

ORA-00076: dump name not found
Cause: An attempt was made to invoke a dump which doesn't exist.

Action: Type DUMPLIST to see the list of available dumps.

ORA-00077: dump name is not valid
Cause: An attempt was made to invoke an invalid dump.

Action: Try another dump.

ORA-00078: cannot dump variables by name
Cause: An attempt was made to dump a variable by name on a system which does not support this feature.

Action: Try the PEEK command.

ORA-00079: variable var not found
Cause: An attempt was made to dump a variable which doesn't exist.

Action: Use a valid variable name.

ORA-00080: invalid global area specified by level num
Cause: An attempt was made to dump an invalid global area.

Action: Use level 1 for the PGA, 2 for the SGA, and 3 for the UGA. Use extra + level to dump global area as well as extra bytes for every pointer; extra must be a multiple of 4.

ORA-00081: address range [num1, num2) is not readable
Cause: An attempt was made to read/write an invalid memory address range.

Action: Try another address or length.

ORA-00082: memory size of num is not in valid set of [1], [2], [4]num1num2num3num4num5
Cause: An invalid length was specified for the POKE command.

Action: Use a valid length (either 1, 2, 4, or possibly 8).

ORA-00083: warning: possibly corrupt SGA mapped
Cause: Even though there may be SGA corruptions, the SGA was mapped.

Action: Use the DUMPSGA command to dump the SGA.

ORA-00084: global area must be PGA, SGA, or UGA
Cause: An attempt was made to dump an invalid global area.

Action: Specify either PGA, SGA, or UGA.

ORA-00085: current call does not exist
Cause: An invalid attempt was made to dump the current call heap.

Action: Wait until the process starts a call.

ORA-00086: user call does not exist
Cause: An invalid attempt was made to dump the user call heap.

Action: Wait until the process starts a call.

ORA-00097: use of Oracle SQL feature not in SQL92 compliance level
Cause: You tried to use an Oracle SQL feature that is not compliant with the SQL92 standard.

Action: Do not use the feature or use the ALTER SESSION SET FLAGGER command to set the appropriate level of SQL92 compliance.

ORA-00099: timed out while waiting for resource, potential PDML deadlock
Cause: The resource needed by the transaction was busy. The PDML transaction could not acquire the resource within the specified amount of time. This indicates potential deadlock involving this PDML transaction and other transactions currently running in the system.

Action: Increase the value of the PARALLEL_TRANSACTION_RESOURCE_TIMEOUT parameter, then retry the operation.

ORA-00100: no data found
Cause: An application made reference to unknown or inaccessible data.

Action: Handle this condition within the application or make appropriate modifications to the application code. Note: If the application uses Oracle-mode SQL instead of ANSI-mode SQL, ORA-01403 will be generated instead of ORA-00100.


如果给你带来帮助,欢迎微信或支付宝扫一扫,赞一下。