ORA-02000 to ORA-04999

2023-12-01 03:27:20  Updated

Applicability

This topic applies only to OceanBase Database Enterprise Edition. OceanBase Database Community Edition provides only MySQL mode.

ORA-02000: missing VALUE keyword

  • OceanBase error code: 5466
  • SQLSTATE: HY000
  • Cause: The VALUE keyword is missing.
  • Solution: Add the VALUE field to the expression.

Note

This error code is introduced since OceanBase Database V4.1.0.

ORA-02014: cannot select FOR UPDATE from view with DISTINCT GROUP BY etc

  • OceanBase error code: 5788

  • SQLSTATE: HY000

  • Cause: You are attempting to select FOR UPDATE from a view that is not merged. In practice, a view is not merged if a syntax (such as DISTINCT or GROUP BY) that prevents merging is used or parameter settings are inappropriate in the initialization file.

  • Solution: Identify the cause why the view is not merged and take corresponding measures so that the view can be merged.

ORA-02017: integer value required

  • OceanBase error code: 9671

  • SQLSTATE: HY000

  • Cause: Integer values are not used.

ORA-02019: connection description for remote database not found

  • OceanBase error code: 5835

  • SQLSTATE: HY000

  • Cause: No connection description is found for the remote database.

ORA-02021: DDL operations are not allowed on a remote database

  • OceanBase error code: 5095

  • SQLSTATE: HY000

  • Cause: You are attempting to perform DDL operations, such as CREATE TABLE tablename@remotedbname, on a remote database.

  • Solution: To modify the structure of a remote database, you must connect to the remote database and have the required privileges.

  • OceanBase error code: 5836

  • SQLSTATE: HY000

  • Cause: The database link to be deleted is not found in the dictionary.

  • Solution: Modify the database link name.

ORA-02049: timeout: distributed transaction waiting for lock

  • OceanBase error code: 6004

  • SQLSTATE: HY000

  • Cause: When the current statement reads a row of data being modified by another transaction that is being committed, the statement must wait until the transaction is committed and then determine whether to read the row of data. A timeout error is returned if the wait times out.

  • Solution: Query the [G]V$OB_TRANSACTION_PARTICIPANTS view for the transaction that is being committed. View the logs on the corresponding server based on the transaction ID to determine why the commit has not been completed.

  • Solution: Consider the situation as a deadlock. Roll back the current transaction and retry.

ORA-02051: another session or branch in same transaction failed or finalized

  • OceanBase error code: 6264

  • SQLSTATE: HY000

  • Cause: Another session with the same global transaction ID at the same site failed. This error may also be caused by program errors. That is, when the database is updated, another tightly coupled transaction branch with the same global transaction ID is completed or terminated.

  • Solution: You do not need to take any actions because the transaction will automatically resume. If a program error occurred, ensure that the database is not updated once the transaction manager enables two-phase commit for tightly coupled distributed transactions.

ORA-02089: COMMIT is not allowed in a subordinate session

  • OceanBase error code: 6258

  • SQLSTATE: XAE07

  • Cause: COMMIT is executed in a session that is not a global coordinator of two-phase commit.

  • Solution: Execute COMMIT only in global coordinator sessions.

ORA-02097: parameter cannot be modified because specified value is invalid

  • OceanBase error code: 4701 and 5855

  • SQLSTATE: HY000

  • Cause: The initialization parameter can be modified, but the modified value is invalid.

  • Solution: Check the value range of the parameter in the OceanBase Database Reference Guide of the corresponding version.

ORA-02149: Specified partition does not exist

  • OceanBase error code: 5146

  • SQLSTATE: HY000

  • Cause: The partition of the object is not found.

  • Solution: Use a correct partition name and retry.

ORA-02204: ALTER INDEX and EXECUTE not allowed for views

  • OceanBase error code: 5372

  • SQLSTATE: HY000

  • Cause: You are attempting to grant or revoke view operation privileges that are invalid for views.

  • Solution: Do not attempt to grant or revoke the ALTER, INDEX, or EXECUTE privilege on views.

ORA-02205: only SELECT and ALTER privileges are valid for sequences

  • OceanBase error code: 5364

  • SQLSTATE: HY000

  • Cause: You are attempting to grant or revoke a sequence operation privilege that is invalid for sequences.

  • Solution: Do not attempt to grant or revoke the DELETE, INDEX, INSERT, UPDATE, REFERENCES, or EXECUTE privilege on sequences.

ORA-02207: invalid INITRANS option value

  • OceanBase error code: 5724

  • SQLSTATE: HY000

  • Cause: The value of INITRANS is not an integer ranging from 1 to 255, and is less than or equal to the value of MAXTRANS.

  • Solution: Set a valid value for INITRANS.

ORA-02209: invalid MAXTRANS option value

  • OceanBase error code: 5725

  • SQLSTATE: HY000

  • Cause: The value of MAXTRANS is not an integer ranging from 1 to 255, and is greater than or equal to the value of INITRANS.

  • Solution: Set a valid value for MAXTRANS.

ORA-02211: invalid value for PCTFREE or PCTUSED

  • OceanBase error code: 5726

  • SQLSTATE: HY000

  • Cause: The specified value of PCTFREE or PCTUSED is not an integer ranging from 0 to 100.

  • Solution: Set a valid value.

ORA-02224: EXECUTE privilege not allowed for tables

  • OceanBase error code: 5365

  • SQLSTATE: HY000

  • Cause: You are attempting to grant or revoke a table operation privilege that is invalid for tables.

  • Solution: Do not attempt to grant or revoke the EXECUTE privilege on tables.

ORA-02225: only EXECUTE and DEBUG privileges are valid for procedures

  • OceanBase error code: 5366

  • SQLSTATE: HY000

  • Cause: You are attempting to grant or revoke a privilege that is invalid for operating programs, functions, or packages.

  • Solution: Do not attempt to grant or revoke any program, function, or package operation privileges other than EXECUTE and DEBUG.

ORA-02251: subquery not allowed here

  • OceanBase error code: 5690

  • SQLSTATE: HY000

  • Cause: Subqueries are not allowed in this option of the statement.

  • Solution: Delete the subqueries from the statement.

ORA-02258: duplicate or conflicting NULL and/or NOT NULL specifications

  • OceanBase error code: 5944

  • SQLSTATE: HY000

  • Cause: Duplicate or conflicting NULL or NOT NULL specifications exist.

  • Solution: Delete the duplicate or conflicting specification.

ORA-02261: such unique or primary key already exists in the table

  • OceanBase error code: 5671

  • SQLSTATE: HY000

  • Cause: A unique or primary key already exists in the table.

  • Solution: Remove redundant keys.

ORA-02264: name \'%.*s\' already used by an existing constraint

  • OceanBase error code: 5678

  • SQLSTATE: HY000

  • Cause: The specified constraint name is duplicate with an existing one.

  • Solution: Specify a unique constraint name.

ORA-02266: unique/primary keys in table referenced by enabled foreign keys

  • OceanBase error code: 4714

  • SQLSTATE: HY000

  • Cause: The operation performed on the table conflicts with foreign keys.

  • Solution: Delete the association with foreign keys and retry.

ORA-02268: referenced table does not have a primary key

  • OceanBase error code: 5894

  • SQLSTATE: HY000

  • Cause: The referenced table has no primary key.

  • Solution: Specify a primary key for the referenced table.

ORA-02270: no matching unique or primary key for this column-list

  • OceanBase error code: 5889

  • SQLSTATE: HY000

  • Cause: The REFERENCES clause in the CREATE TABLE or ALTER TABLE statement specifies a column list that does not match a unique constraint or primary key in the referenced table.

  • Solution: Query the ALL_CONS_COLUMNS view for the correct column name.

ORA-02277: invalid sequence name

  • OceanBase error code: 4300

  • SQLSTATE: HY000

  • Cause: The specified sequence name is not a valid identifier name.

  • Solution: Specify a valid identifier name for the sequence.

ORA-02278: duplicate MAXVALUE/NOMAXVALUE specifications

  • OceanBase error code: 4301 and 4306

  • SQLSTATE: HY000

  • Cause: Duplicate or conflicting MAXVALUE or NOMAXVALUE specifications exist.

  • Solution: Delete the duplicate or conflicting MAXVALUE or NOMAXVALUE specification.

ORA-02279: duplicate MINVALUE/NOMINVALUE specifications

  • OceanBase error code: 4302 and 4307

  • SQLSTATE: HY000

  • Cause: Duplicate or conflicting MINVALUE or NOMINVALUE specifications exist.

  • Solution: Delete the duplicate or conflicting MINVALUE or NOMINVALUE specification.

ORA-02280: duplicate CYCLE/NOCYCLE specifications

  • OceanBase error code: 4303 and 4308

  • SQLSTATE: HY000

  • Cause: Duplicate or conflicting CYCLE or NOCYCLE specifications exist.

  • Solution: Delete the duplicate or conflicting CYCLE or NOCYCLE specifications.

ORA-02281: conflicting CACHE/NOCACHE specifications

  • OceanBase error code: 4309

  • SQLSTATE: HY000

  • Cause: Conflicting CACHE or NOCACHE specifications exist.

  • Solution: Delete the conflicting CACHE or NOCACHE specification.

ORA-02282: conflicting ORDER/NOORDER specifications

  • OceanBase error code: 4310

  • SQLSTATE: HY000

  • Cause: Conflicting ORDER or NOORDER specifications exist.

  • Solution: Delete the conflicting ORDER or NOORDER specification.

ORA-02283: cannot alter starting sequence number

  • OceanBase error code: 4311

  • SQLSTATE: HY000

  • Cause: You are attempting to modify the initial value of a sequence.

  • Solution: Do not modify the initial value of a sequence.

ORA-02284: duplicate INCREMENT BY specifications

  • OceanBase error code: 4312

  • SQLSTATE: HY000

  • Cause: Duplicate INCREMENT BY specifications exist.

  • Solution: Delete the duplicate INCREMENT BY specification.

ORA-02285: duplicate START WITH specifications

  • OceanBase error code: 4313

  • SQLSTATE: HY000

  • Cause: Duplicate START WITH specifications exist.

  • Solution: Delete the duplicate START WITH specification.

ORA-02286: no options specified for ALTER SEQUENCE

  • OceanBase error code: 4314

  • SQLSTATE: HY000

  • Cause: No option is specified for ALTER SEQUENCE.

  • Solution: A statement without options is meaningless. Therefore, you must specify required options for the statement.

ORA-02287: sequence number not allowed here

  • OceanBase error code: 4315

  • SQLSTATE: HY000

  • Cause: The specified sequence number CURRVAL or NEXTVAL is inappropriate.

  • Solution: Delete the sequence number.

ORA-02289: object does not exist", "%s does not exist

  • OceanBase error code: 4298 and 4316

  • SQLSTATE: HY000

  • Cause: The specified sequence does not exist, or you do not have the privilege to perform this operation.

  • Solution: Ensure that the sequence name is correct, and that you have the privilege to perform required operations on this sequence.

ORA-02290: check constraint violated

  • OceanBase error code: 5693

  • SQLSTATE: HY000

  • Cause: The inserted value does not comply with the CHECK constraint.

  • Solution: Do not insert a value that violates the constraint.

ORA-02291: integrity constraint violated - parent key not found

  • OceanBase error code: 5315

  • SQLSTATE: 23000

  • Cause: A foreign key has no matching primary key.

  • Solution: Delete the foreign key or add a matching primary key.

ORA-02292: integrity constraint violated - child record found

  • OceanBase error code: 5314

  • SQLSTATE: 23000

  • Cause: You are attempting to delete a parent key value with a dependent foreign key.

  • Solution: Delete the dependent foreign key, and then delete the parent key or revoke the constraint.

ORA-02293: cannot validate (%.*s.%.*s) - check constraint violated

  • OceanBase error code: 5713

  • SQLSTATE: HY000

  • Cause: A table modification operation attempts to validate the CHECK constraint of a table, which contains values that do not comply with the CHECK constraint.

  • Solution: Identify the conflict with the CHECK constraint and resolve the error accordingly.

ORA-02296: cannot enable (%.*s.%.*s) - null values found

  • OceanBase error code: 5851

  • SQLSTATE: HY000

  • Cause: The operation to enable the constraint for the table failed because some values in the table do not meet the constraint.

ORA-02296: cannot enable (%.*s.%.*s) - null values found

  • OceanBase error code: 5945

  • SQLSTATE: HY000

  • Cause: The operation to enable the constraint for the table failed because some values in the table do not meet the constraint.

ORA-02298: cannot validate (%.*s.%.*s) - parent keys not found

  • OceanBase error code: 5785

  • SQLSTATE: HY000

  • Cause: The ALTER TABLE VALIDATE CONSTRAINT operation on the table failed because the table contains orphaned child records.

ORA-02305: only EXECUTE DEBUG and UNDER privileges are valid for types

  • OceanBase error code: 5367

  • SQLSTATE: HY000

  • Cause: You are attempting to grant or revoke a privilege other than EXECUTE, DEBUG, and UNDER on a type, which is not allowed.

  • Solution: Grant or revoke only the EXECUTE, DEBUG, or UNDER privilege on a type.

ORA-02327: cannot create index on expression with datatype ADT '%.*s'

  • OceanBase error code: 7417
  • SQLSTATE: 42000
  • Cause: You tried to create an index on an expression of an abstract data type (ADT).
  • Solution: Make sure that the table schema for which you want to create an index does not contain an ADT column.

Note

This error code is introduced since OceanBase Database V4.2.0.

ORA-02377: invalid resource limit %s

  • OceanBase error code: 5705

  • SQLSTATE: HY000

  • Cause: The specified limit value is 0 or smaller.

  • Solution: Specify a limit value greater than 0.

ORA-02379: profile %.*s already exists

  • OceanBase error code: 5706

  • SQLSTATE: HY000

  • Cause: You are attempting to create an existing profile.

ORA-02380: profile %.*s does not exist

  • OceanBase error code: 5704

  • SQLSTATE: HY000

  • Cause: You are attempting to allocate the user to a nonexistent profile.

ORA-02382: profile string has users assigned cannot drop without CASCADE

  • OceanBase error code: 5707

  • SQLSTATE: HY000

  • Cause: The profile is being used by a user and supports only cascade deletion.

  • Solution: Add the CASCADE keyword or contact OceanBase Technical Support for troubleshooting.

ORA-02430: cannot enable constraint (%.*s) - no such constraint

  • OceanBase error code: 5778

  • SQLSTATE: HY000

  • Cause: The specified constraint does not exist in the table.

ORA-02431: cannot disable constraint (%.*s) - no such constraint

  • OceanBase error code: 5779

  • SQLSTATE: HY000

  • Cause: The specified constraint does not exist in the table.

ORA-02436: date or system variable wrongly specified in CHECK constraint

  • OceanBase error code: 5691

  • SQLSTATE: HY000

  • Cause: You are attempting to use uncertain parameters in the CHECK constraint, such as uncertain time constants (like the time without century information) or system variables (like USER).

  • Solution: Specify definite parameters in the CHECK constraint.

ORA-02438: Column check constraint \'%.*s\' cannot reference other columns

  • OceanBase error code: 5786

  • SQLSTATE: HY000

  • Cause: The operation attempted to define a column check constraint that references another column.

  • Solution: Define the constraint as a table check constraint.

ORA-02443: Cannot drop constraint \'%.*s\' - nonexistent constraint

  • OceanBase error code: 5692

  • SQLSTATE: HY000

  • Cause: The constraint specified in the ALTER TABLE DROP CONSTRAINT <constraint_name> statement does not exist.

  • Solution: Make sure that the constraint name is correct.

ORA-02449: unique/primary keys in table (%.*s) referenced by foreign key (%.*s) on table (%.*s)

  • OceanBase error code: 5618

  • SQLSTATE: HY000

  • Cause: You are attempting to drop a table with unique or primary keys referenced by foreign keys in another table.

  • Solution: Before you perform the above operations on the table, drop the foreign key constraints in other tables. You can see which constraints are referencing a table by executing the following statement: SELECT * FROM USER_CONSTRAINTS WHERE TABLE_NAME = "tabnam";.

Note

This error code is introduced since OceanBase Database V4.0.0.

ORA-03001: unimplemented feature

  • OceanBase error code: 4376

  • SQLSTATE: HY000

  • Cause: OceanBase Database does not support this feature.

ORA-04001: sequence parameter %s must be an integer

  • OceanBase error code: 4317

  • SQLSTATE: HY000

  • Cause: The value of the sequence parameter is not an integer.

  • Solution: Create a sequence and specify an integer value for the sequence parameter.

ORA-04002: INCREMENT must be a nonzero integer

  • OceanBase error code: 4318

  • SQLSTATE: HY000

  • Cause: The specified increment is 0 for a sequence.

  • Solution: Specify a non-zero value as the increment.

ORA-04003: sequence parameter exceeds maximum size allowed

  • OceanBase error code: 4319

  • SQLSTATE: HY000

  • Cause: The sequence parameter exceeds the length limit.

  • Solution: Specify a parameter within the length limit.

ORA-04004: MINVALUE must be less than MAXVALUE

  • OceanBase error code: 4320

  • SQLSTATE: HY000

  • Cause: The specified minimum value is greater than or equal to the value of MAXVALUE.

  • Solution: Specify a minimum value less than the value of MAXVALUE.

ORA-04005: INCREMENT must be less than MAXVALUE minus MINVALUE

  • OceanBase error code: 4321

  • SQLSTATE: HY000

  • Cause: The specified increment is greater than or equal to the value of MAXVALUE - MINVALUE.

  • Solution: Specify an increment less than the value of MAXVALUE - MINVALUE.

ORA-04006: START WITH cannot be less than MINVALUE

  • OceanBase error code: 4322

  • SQLSTATE: HY000

  • Cause: The specified start value is less than the value of MINVALUE.

  • Solution: Specify a start value greater than or equal to the value of MINVALUE.

ORA-04007: MINVALUE cannot be made to exceed the current value

  • OceanBase error code: 4323

  • SQLSTATE: HY000

  • Cause: The specified value of MINVALUE is greater than the current value.

  • Solution: Ensure that the minimum value is always the current value.

ORA-04008: START WITH cannot be more than MAXVALUE

  • OceanBase error code: 4324

  • SQLSTATE: HY000

  • Cause: The specified start value is greater than the value of MAXVALUE.

  • Solution: Ensure that the start value is less than the value of MAXVALUE.

ORA-04009: MAXVALUE cannot be made to be less than the current value

  • OceanBase error code: 4325

  • SQLSTATE: HY000

  • Cause: The specified value of MAXVALUE is less than the current value.

  • Solution: Ensure that the value of MAXVALUE is greater than the current value.

ORA-04010: the number of values to CACHE must be greater than 1

  • OceanBase error code: 4326

  • SQLSTATE: HY000

  • Cause: The value in the CACHE clause is 1.

  • Solution: Specify NOCACHE, or set the value in the CACHE clause to a value greater than 1.

ORA-04011: sequence option value out of range

  • OceanBase error code: 4327

  • SQLSTATE: HY000

  • Cause: The value of the sequence parameter is out of range.

  • Solution: Specify a value within the range for the sequence parameter.

ORA-04013: number to CACHE must be less than one cycle

  • OceanBase error code: 4328

  • SQLSTATE: HY000

  • Cause: The number to cache specified is greater than the number of values in a cycle.

  • Solution: Increase the cycle or cache fewer values.

ORA-04014: descending sequences that CYCLE must specify MINVALUE

  • OceanBase error code: 4329

  • SQLSTATE: HY000

  • Cause: A line break must be specified for a loop sequence.

  • Solution: Re-create a sequence and specify a line-break value for the sequence.

ORA-04015: ascending sequences that CYCLE must specify MAXVALUE

  • OceanBase error code: 4330

  • SQLSTATE: HY000

  • Cause: A line break must be specified for a loop sequence.

  • Solution: Re-create a sequence and specify a line-break value for the sequence.

ORA-04015: sequence %s no longer exists

  • OceanBase error code: 4331

  • SQLSTATE: HY000

  • Cause: A line break must be specified for a loop sequence.

  • Solution: Re-create a sequence and specify a line-break value for the sequence.

ORA-04042: procedure, function, package, or package body does not exist

  • OceanBase error code: 5880

  • SQLSTATE: HY000

  • Cause: You are attempting to access a nonexistent procedure, function, program package, or program package body.

  • Solution: Check whether the name of the accessed object is correct.

ORA-04045: errors during recompilation/revalidation of %.*s.%.*s

  • OceanBase error code: 9744
  • SQLSTATE: HY000
  • Cause: An error occurred during the recompilation or revalidation of %.*s.

Note

This error code is introduced since OceanBase Database V4.1.0.

ORA-04047: object specified is incompatible with the flag specified

  • OceanBase error code: 5974

  • SQLSTATE: HY000

  • Cause: The object type implied by the flag does not match the specified object type.

  • Solution: Specify a correct object or use a proper flag.

ORA-04055: Aborted: '%.*s' formed a non-REF mutually-dependent cycle with '%.*s'

  • OceanBase error code: 5941

  • SQLSTATE: HY000

  • Cause: The compilation is terminated because the compiled database unit forms a non-REF mutually dependent loop with other database units. When you attempt to compile a type with attributes of other types, and these types may form a loop with this type, this error is reported. Code:

    create type t1;

    create type t2 (a t1);

    create type t1 (a t2);

  • Solution: Terminate the loop by adding REF or using other types.

ORA-04063: view '%.*s.%.*s' has errors

  • OceanBase error code: 5231

  • SQLSTATE: 42S22

  • Cause: You attempt to execute a stored procedure that uses incorrect syntax or references a nonexistent procedure, or to use a view that references a nonexistent table.

  • Solution: Correct the error or create a reference object as required.

ORA-04067: not executed, type body '%.*s' does not exist

  • OceanBase error code: 5924

  • SQLSTATE: HY000

  • Cause: The stored procedure to be executed does not exist.

  • Solution: Ensure that the procedure name is correct.

ORA-04073: column list not valid for this trigger type

  • OceanBase error code: 9570

  • SQLSTATE: HY000

  • Cause: The INSTEAD OF trigger cannot display specific column names to be updated.

  • Solution: Delete the column list.

ORA-04074: invalid REFERENCING name

  • OceanBase error code: 9664

  • SQLSTATE: HY000

  • Cause: The name given in the referencing clause was invalid.

  • Solution: Make sure that the referencing name is not a reserved word.

ORA-04077: stmt trigger with when clause

  • OceanBase error code: 9545

  • SQLSTATE: HY000

  • Cause: The WHEN clause can be specified only for row-level triggers.

  • Solution: Delete the WHEN clause or specify the WHEN clause for each row.

ORA-04080: trigger '%.*s' does not exist

  • OceanBase error code: 5733

  • SQLSTATE: HY000

  • Cause: The name of the trigger is invalid.

  • Solution: Check the trigger name.

ORA-04081: trigger already exist

  • OceanBase error code: 5734

  • SQLSTATE: HY000

  • Cause: The name or type of the trigger already exists.

  • Solution: Use a different trigger name or delete other triggers with the same name.

ORA-04082: NEW or OLD references not allowed in table level triggers

  • OceanBase error code: 9546

  • SQLSTATE: HY000

  • Cause: A table-level trigger is using NEW or OLD references.

  • Solution: Delete the NEW and OLD references.

ORA-04084: cannot change NEW values for this trigger type

  • OceanBase error code: 9584

  • SQLSTATE: HY000

  • Cause: The NEW variable is not allowed in statement-level triggers.

  • Solution: Change the trigger type or remove the variable reference.

ORA-04085: cannot change the value of an OLD reference variable

  • OceanBase error code: 9662

  • SQLSTATE: HY000

  • Cause: The old values are read-only and cannot be modified.

  • Solution: Do not attempt to change an old variable.

ORA-04091: table '%.*s'.'%.*s' is mutating, trigger/function may not see it

  • OceanBase error code: 5791

  • SQLSTATE: HY000

  • Cause: A trigger or a user-defined PL function referenced in this statement is attempting to view or modify a table while the statement that triggers the table is modifying this table.

  • Solution: Rewrite the trigger or function so that it does not read the table.

ORA-04095: trigger '%.*s' already exists on another table, cannot replace it

  • OceanBase error code: 5735

  • SQLSTATE: HY000

  • Cause: The trigger cannot be replaced because it exists in another table.

  • Solution: Delete the triggers with the same name and re-create the trigger.

Contact Us