Oracle 12c R2 Error Codes and Solution Suggestions from ORA-14600 to ORA-14800
- ORA-14601: Illegal to specify SUBPARTITIONS or STORE-IN while specifying a subpartition template
Cause: Cannot specify these clauses while specifying a template
Action: Correct the subpartition template clause.
Cause: SUBPARTITION TEMPLATE can be specified only for composite partitioned tables
Action: Do not use SUBPARTITION TEMPLATE on non-partitioned or non-composite partitioned tables.
- ORA-14603: [SUBPARTITIONS | SUBPARTITION TEMPLATE] subpartition_count syntax is valid only for range-hash tables
Cause: This syntax is valid only if subpartitioning dimension is hash
Action: n/a
- ORA-14604: During CREATE TABLE time it is illegal to specify SUBPARTITIONS or STORE IN once a SUBPARTITION TEMPLATE has been specified
Cause: Once a subpartition template has been specified during a CREATE TABLE it is illegal to specify SUBPARTITIONS or STORE IN anywhere else
Action: Remove either the SUBPARTITIONS | STORE IN or remove the SUBPARTITION TEMPLATE clause
Cause: A subpartition / lob segment was not specified a name in the template descriptions
Action: All subpartitions / lob segments must have names specified in the template
- ORA-14607: Tablespace was not specified for previous subpartitions in template but is specified for string
Cause: Tablespaces may either be specified for all subpartitions or must not be specified for any subpartitions
Action: Either specify tablespaces for all or for none of the subpartitions
Cause: Lob attributes of a column must be specified for all subpartitions or must not be specified at all
Action: Ensure lob attributes of a column are specified for all subpartitions or not specified at all
Cause: A subpartition name cannot be duplicated within the template
Action: Rename one of the subpartitions.
Cause: Two lob segments of the same column were given the same name in the template
Action: Rename one of the lob segments
- ORA-14613: Attempt to generate name from parent name string and template name string failed as the combine named would have been longer than allowed
Cause: Any name generated from a partition name and template name must be less than the maximum permissible name for an identifier
Action: Shorten either partition or template name.
Cause: A list value cannot be specified more that once
Action: Remove one of the specifications of the value
Cause: A list value cannot be specified more that once
Action: Remove one of the specifications of the value
Cause: A subpartition maintenance operation, such as ALTER TABLE MODIFY SUBPARTITION ADD|DROP VALUES, was performed on a non-List subpartitioned object.
Action: Reissue the command against a List subpartitioned object.
Cause: A ADD/DROP VALUES operation is being done on the default subpartition
Action: Ensure that ADD/DROP VALUES is not done on the DEFAULT subpartition
Cause: ALTER TABLE DROP VALUES tried to drop the last value of the subpartition
Action: Cannot execute the command, unless two or more values exist for subpartition
Cause: After a SPLIT/DROP VALUE of a list subpartition, each resulting subpartition(as applicable) must contain at least 1 value
Action: Ensure that each of the resulting subpartitions contains atleast 1 value
Cause: A subpartition already exists with DEFAULT value
Action: Remove the DEFAULT value from the list specified
Cause: An ADD SUBPARTITION operation cannot be executed when a subpartition with DEFAULT values exists
Action: Issue a SPLIT of the DEFAULT subpartition instead
Cause: One of the list values in the ADD SUBPARTITION or ADD VALUES statement already exists in another subpartition
Action: Remove the duplicate value from the statement and try again
Cause: One of the list values in the SPLIT PARTITION or DROP VALUES statement does not exist in the subpartition
Action: Remove the value from the statement and try again
Cause: A subpartition description follows the one describing the default subpartition
Action: Ensure that the DEFAULT subpartition is the last subpartition description
Cause: table subpartition contains rows for the values being dropped.
Action: DELETE all rows for the values being dropped and reissue statement
Cause: An ADD VALUE operation cannot be executed because the values being added exist in the DEFAULT subpartition
Action: Issue a SPLIT of the DEFAULT subpartition and then MERGE the split subpartition into the subpartition to which values need to be added
Cause: An invalid operation such as ALTER INDEX DROP|SPLIT SUBPARTITION was specified on the global index
Action: Ensure that subpartition level operations are not specified on a GLOBAL index, since these are only RANGE partitioned
Cause: An operation such as ALTER TABLE SPLIT|ADD SUBPARTITION specified bounds that were inconsistent with List subpartitioning method
Action: Specify VALUES/subpartition descriptions correctly for SPLIT/ADD of List subpartitions
Cause: A drop subpartition command is being executed when there is only one subpartition in the partition
Action: n/a
Cause: User attempted an operation requiring that we access data in a subpartition which resides in a tablespace which was taken offline. Such operations include trying to drop a tablespace of a table which has indices defined on it or is referenced by a constraint.
Action: Bring tablespace online before attempting the operation.
Cause: When exchanging a partitioned table with a composite partition the bounds that describe the partitions of the table must match the bounds that describe the subpartitions of the composite partition.
Action: Ensure that the bounds describing partitions in the partitioned table is the same as the bounds of the subpartitions in the the composite partition.
Cause: User issued ALTER TABLE ADD SUBPARTITION statement with PARALLEL clause for a List subpartition of a Range/List partitioned object which is illegal
Action: Remove the PARALLEL clause.
- ORA-14633: Index maintainence clause not allowed for ADD list subpartition to a Composite partitioned table
Cause: The clause INVALIDATE or UPDATE GLOBAL INDEXES is allowed only for ADD hash subpartition to a composite partitioned table.
Action: Remove clause and reissue operation
- ORA-14634: Subpartition descriptions cannot be specified during the SPLIT/MERGE of a partition of a Range-List partitioned table
Cause: During a split or a merge of a partition of a range list partitioned table you cannot specify any subpartitioning information for the resulting partition (s)
Action: Remove all subpartitioning information from the DDL.
Cause: ALTER TABLE MERGE SUBPARTITIONS contained more than one resulting subpartition for the MERGE
Action: Ensure that the statement describes exactly one subpartition as the target that need to be MERGEd
Cause: ALTER TABLE SPLIT SUBPARTITION contained more than 2 resulting subpartition for the SPLIT
Action: Ensure that the statement describes exactly 2 subpartitions as the target of the SPLIT operation
Cause: The same subpartition name was specified twice for the merge operation
Action: Re-submit operation with 2 distinct subpartition names within the same composite partition
Cause: Attempted to MERGE subpartitions in different Range Composite partitions
Action: Reissue the command after ensuring that the 2 subpartitions being merged lie in the same composite partition
Cause: Attempted to specify SUBPARTITIONS clause on table that is not partitioned by the Composite Range-Hash method
Action: Reissue the command after ensuring that the SUBPARTITIONS clause is not specified, to specify a template for a Composite Range List object use the SUBPARTITION TEMPLATE clause
Cause: User attempted to add or coalesce an index partition of a global index not partitioned by hash method.
Action: Issue the statement on a global index partitioned by hash method. or if the index is partitioned by range method consider using split/drop instead of add/coalesce.
- ORA-14641: STORE-IN clause can be specified only for a Hash, Interval, Autolist, Composite Range Hash, Composite Interval, Composite Autolist table or partition
Cause: Specifying a STORE-IN clause during creation or altering of a Range, Composite Range List partitioned table was not allowed.
Action: Re-issue the statement after removing the STORE-IN clause.
Cause: The two tables in the EXCHANGE have usable bitmap indexes, and the INCLUDING INDEXES option has been specified and the tables have different hakan factors.
Action: Perform the exchange with the EXCLUDING INDEXES option or alter the bitmap indexes to be unusable.
Cause: Either records_per_block has been minimized for one of the tables to be exchanged, but not the other, or the hakan factors for the tables to be exchanged are not equal.
Action: If records_per_block has been minimized for one of the tables, but not the other, either perform alter table with the NOMINIMIZE RECORDS_PER_BLOCK option for both tables, or perform alter table with the MINIMIZE RECORDS_PER_BLOCK for both tables. If the hakan factors do not match perform alter table with the NOMINIMIZE RECORDS_PER_BLOCK option for both tables.
Cause: A subpartition maintenance operation such as ALTER TABLE MODIFY PARTITION COALESCE SUBPARTITION can only be performed on Hash subpartitioned objects
Action: Re-issue the command against a Hash subpartitioned object.
Cause: A STORE IN clause was specified for Range List partitioned object
Action: Re-issue the command after removng the STORE IN clause
- ORA-14646: Specified alter table operation involving compression cannot be performed in the presence of usable bitmap indexes
Cause: The first time a table is altered to include compression, it cannot have a usable bitmap index (partition). Subsequent alter table statements involving compression do not have this same restriction.
Action: A) Drop any bitmap indexes defined on the table, and re-create them once the operation is complete or, B) Mark all index fragments of all bitmap indexes defined on the table UNUSABLE and rebuild them once the operation is complete.
Cause: An attempt was made to MERGE subpartitions in different list composite partitions.
Action: Reissue the command after ensuring that the two subpartitions being merged lie in the same composite partition.
Cause: Attempted to perform an operation on a reference-partitioned table that was not supported.
Action: Do not perform the unsupported operation.
Cause: The specified partitioning constraint was not supported for reference-partitioned tables. The partitioning constraint must be enabled, validated, and not deferrable. The partitioning constraint must not have ON DELETE SET NULL semantics.
Action: Correct the statement to specify a supported partitioning constraint.
Cause: The specified partitioning foreign key was not supported for reference-partitioned tables. All columns of the partitioning foreign key must be constrained NOT NULL with enabled, validated, and not deferrable constraints. Furthermore, a virtual column cannot be part of the partitioning foreign key.
Action: Correct the statement to specify a supported partitioning foreign key.
Cause: Attempted to create a reference-partitioned table with a non-partitioned parent table.
Action: Correct the statement and reenter.
Cause: Attempted to create a reference-partitioned table with a number of partitions which was different from that of the parent table.
Action: Correct the CREATE TABLE statement to specify a correct number of partitions.
Cause: Partitioning constraint specified in CREATE TABLE … PARTITION BY REFERENCE was not one of the referential constraints on the table being created.
Action: Ensure that the specified partitioning constraint is one of the referential constraints on the table being created.
Cause: Attempted to drop the parent of a reference-partitioned table.
Action: Drop all reference-partitioned child tables before dropping the parent table.
Cause: Update of a parent key may require migration of rows in reference-partitioned child tables, however this is not supported because the parent key was not suitably indexed.
Action: Replace the existing index on the parent key with a unique index that does not contain any columns in addition to the parent key.
Cause: A table has been specified in the DEPENDENT TABLES clause that is not a reference-partitioned table affected by the operation.
Action: Correct the statement and reenter.
Cause: An attempt was made to create a reference-partitioned table with an interval partitioned parent table.
Action: Do not create a reference-partitioned table with an interval partitioned parent table.
Cause: Attempted to create a reference-partitioned table with a index-organized parent table.
Action: Correct the statement and reenter.
Cause: Attempted to disable row movement for a reference-partitioned table, although row movement was enabled for its parent table.
Action: Disable row movement for parent table before disabling row movement for the reference-partitioned table.
Cause: Attempted to enable row movement for a partitioned table, although row movement was disabled for a reference-partitioned child table.
Action: Enable row movement for reference-partitioned child tables before enabling row movement for the parent table.
Cause: Parent key of the reference-partitioned table’s partitioning constraint contained virtual columns.
Action: Correct the statement to specify a partitioning constraint with supported parent key and reenter.
Cause: Parent key of the reference partitioned table’s partitioning constraint contained a virtual column that referenced a PL/SQL expression.
Action: Correct the statement to specify a partitioning constraint with supported parent key and reenter.
Cause: Parent key of the reference partitioned table’s partitioning constraint contained a virtual column that involved the ROWID data type.
Action: Correct the statement to specify a partitioning constraint with supported parent key and reenter.
- ORA-14666: Cannot use expressions involving BLOB or CLOB data types in reference partitioning parent key
Cause: Parent key of the reference partitioned table’s partitioning constraint contained a virtual column that involved a BLOB or CLOB data type.
Action: Correct the statement to specify a partitioning constraint with supported parent key and reenter.
Cause: Parent key of the reference partitioned table’s partitioning constraint contained a virtual column that involved an object data type (object, REF, nested table, array).
Action: Correct the statement to specify a partitioning constraint with supported parent key and reenter.
- ORA-14668: Cannot drop a unique or primary key referenced by the partitioning constraint of a reference-partitioned table.
Cause: An attempt was made to drop a unique or primary key referenced by the partitioning constraint of a reference-partitioned table.
Action: Drop all reference-partitioned child tables before dropping the unique or primary key of the parent table.
- ORA-14669: interval partition of reference-partitioned table must correspond to interval partition of the parent table
Cause: An attempt was made to create a reference-partitioned table with an interval partiton that does not pair with an interval partition in the parent table.
Action: Correct the CREATE TABLE statement to specify a correct number of partitions.
Cause: An attempt was made to run an operation on a reference partitioned table that requires a usable index on the reference partitioning parent key, but no such index exists.
Action: Create a usable index on the reference partitioning parent key, or rebuild the existing unusable index on the reference partitioning parent key.
Cause: An attempt was made to use a MIN or MAX aggregate with a value that was too long.
Action: Limit the size of MIN and MAX aggregate inputs to 32763 bytes.
Cause: An attempt was made to create VARCHAR2 or NVARCHAR2 columns larger than 4000 bytes, or a RAW column larger than 2000 bytes, in a cluster, clustered table or index-organized table.
Action: Correct the statement and reenter.
Cause: An attempt was made to use the STORE AS clause to specify storage attributes for an extended character type column.
Action: Correct the statement and reenter.
Cause: An attempt was made to set the MAX_STRING_SIZE parameter to STANDARD in a database that has been created with, or migrated to, the EXTENDED setting.
Action: Set MAX_STRING_SIZE to EXTENDED and retry.
Cause: An attempt was made to update the MAX_STRING_SIZE parameter to EXTENDED when the database was not in UPGRADE mode.
Action: Restart the database in UPGRADE mode, modify the parameter, run the utl32k.sql script in $ORACLE_HOME/rdbms/admin, and restart the database in normal mode.
Cause: An attempt was made to open the database in normal mode before the MAX_STRING_SIZE migration process completed.
Action: Restart the database in UPGRADE mode, run the utl32k.sql script in $ORACLE_HOME/rdbms/admin, and restart the database in normal mode.
Cause: An attempt was made to open the database in normal mode before the MAX_STRING_SIZE migration process completed for the specified pluggable database.
Action: Restart the database in UPGRADE mode, run the utl32k.sql script in $ORACLE_HOME/rdbms/admin in the specified pluggable database, and restart the database in normal mode.
- ORA-14697: This connection does not support bind variables larger than 4000 bytes for SQL statements.
Cause: An attempt was made to use a bind variable larger than 4000 bytes for a SQL statement when the client initially connected to a container with STANDARD MAX_STRING_SIZE, and then within the same session switched to a container with EXTENDED MAX_STRING_SIZE.
Action: Initialize a new connection for the container with EXTENDED MAX_STRING_SIZE and retry.
- ORA-14698: MAX_STRING_SIZE migration to STANDARD is not allowed due to column string in object string.string.
Cause: An attempt was made to use a bind variable larger than 4000 bytes for a SQL statement when the client initially connected to a container with STANDARD MAX_STRING_SIZE, and then within the same session switched to a container with EXTENDED MAX_STRING_SIZE.
Action: Initialize a new connection for the container with EXTENDED MAX_STRING_SIZE and retry.
Cause: An attempt was made to bind a value larger than 4000 bytes for insert or update of a VARCHAR2, NVARCHAR2, or RAW column, and the value was too large for the destination column.
Action: Either make the destination column larger, or reduce the size of the bind value.
Cause: Attempt to issue a LOCK TABLE statement on SYS owned object(s) by a non-SYS user, user should minimally have DML privileges
Action: Re-issue LOCK TABLE statement for non-SYS user after granting DML privileges on object, or non-SYS user should connect as SYS
- ORA-14701: partition-extended name or bind variable must be used for DMLs on tables partitioned by the System method
Cause: User attempted not to use partition-extended syntax for a table partitioned by the System method
Action: Must use of partition-extended syntax in contexts mentioned above.
Cause: Attempted to use nonnumerical value or the number was out of range of the partitions.
Action: Use a valid partition number.
Cause: The table is not partitioned by the System method
Action: Skip the AFTER clause.
Cause: User attempted to create a SYSTEM partitioned table by doing a create table as select.
Action: Do a create table followed by an insert as select into each partition.
Cause: An attempt was made to truncate a table with unique or primary keys referenced by enabled foreign keys in another table.
Action: Before performing the TRUNCATE operation on the table, disable the foreign key constraints in other tables. You can see what constraints exist in a table by issuing the following command: SELECT * FROM USER_CONSTRAINTS WHERE TABLE_NAME = :1;
Cause: An ALTER TABLE EXCHANGE [SUB]PARTITION CASCADE command found that the specified parent key in the specified table was referenced by partitioning constraints in multiple reference partitioned child tables.
Action: Perform EXCHANGE [SUB]PARTITION without the CASCADE option. The CASCADE option is not supported if a parent key in the reference partitioned table hierarchy is referened by multiple partitioning constraints.
Cause: There was no table matching the specified table in the ALTER TABLE EXCHANGE [SUB]PARTITION CASCADE command.
Action: Perform EXCHANGE [SUB]PARTITION without the CASCADE option or ensure that exactly one table matches the specified table.
Cause: There were multiple tables matching the specified table in the ALTER TABLE EXCHANGE [SUB]PARTITION CASCADE command.
Action: Perform EXCHANGE [SUB]PARTITION without the CASCADE option or ensure that exactly one table matches the specified table.
Cause: An ALTER TABLE EXCHANGE [SUB]PARTITION command was attempted for the specified table, however, the exchange table did not have equivalent indexes.
Action: Ensure that the indexes for the two tables have indexes which follow this rule: For every nonpartitioned index for the nonpartitioned table, there has to be an identical LOCAL index on the partitioned table and vice versa. To be identical, the column position type and size have to be the same.
Cause: An ALTER TABLE EXCHANGE [SUB]PARTITION CASCADE command was attempted for the specified table. However, there was a domain index on the specified table.
Action: Perform EXCHANGE [SUB]PARTITION without the CASCADE option or ensure that there is no domain index on the specified table.
Cause: You attempted to create an interval partitioned table with more than one partitioning column.
Action: Use a single partitioning column.
Cause: You attempted to use interval partitioning on a table partitioned on a column of data type other than number or date/time.
Action: Use only number or date/time columns as partitioning columns for interval partitioned tables.
Cause: You attempted to use either a nonconstant interval or an interval whose data type does not correspond to the partitioning column
Action: Use only constant expressions for the interval. If the data type of partitioning column is numeric, the interval must be a numeric constant. If the data type is of type date/time, the interval must be a constant of interval type
Cause: The interval mapped to zero.
Action: You must use a nonzero interval.
Cause: The interval string was too long
Action: Specify interval using a shorter string
Cause: The [SUB]PARTITION FOR VALUES (…) clause can only take constants. In addition it takes as many arguments as there are partitioning columns and the values must be coercible to the partitioning columns.
Action: Specify a valid FOR VALUES clause.
Cause: The table was not partitioned by the interval or by the autolist method.
Action: ALTER TABLE SET STORE IN is only valid for interval or autolist partitioned tables. Ensure that the table is partitioned by an interval or by an autolist method.
Cause: SET INTERVAL () is used to convert an interval partitioned table to a range partitioned table. It is not legal on a range partitioned table
Action: Use SET INTERVAL () only on an interval partitioned table.
Cause: An attempt was made to drop the last range partition of an interval partitioned table.
Action: Do not attempt to drop this partition.
Cause: SET INTERVAL clause was specified. ALTER TABLE SET INTERVAL is only legal on a range partitioned table with a single partitioning column. Additionally, this table cannot have a MAXVALUE partition.
Action: Use SET INTERVAL only on a valid table.
Cause: ALTER TABLE ADD PARTITION was attempted on an Interval partitioned object.
Action: Do not perform the operation on an Interval partitioned object. Insert a row to create the new partition.
Cause: An attempt was made to create a [sub]partition with a MAXVALUE highbound on an INTERVAL [sub]partitioned object.
Action: Do not create a [sub]partition with a MAXVALUE highbound.
Cause: An attempt was made to create a domain index on an interval partitioned table.
Action: Do not create a domain index on an interval partitioned table.
Cause: Could not determine the partition corresponding to the FOR VALUES clause.
Action: Remove bind variables and dependencies on session parameters from the values specified in the FOR VALUES clause.
Cause: An attempt was made to truncate, drop or merge partitions with mixed syntax.
Action: Do not use mixed syntax to truncate, drop or merge partitions.
Cause: An attempt was made to create a partition concurrently with index creation.
Action: Retry the statement after the index build is finished.
Cause: This operation was not able to obtain a stable snapshot of the interval partitioning metadata.
Action: Retry the statement.
Cause: The interval specified conflicts with the existing high bound for the last partition. The combination might lead to invalid dates for high bounds in the future.
Action: If this is a CREATE TABLE, try specifying a different high bound value for the last partition, or a different interval. If this is an ALTER TABLE SET INTERVAL, please choose either a different interval, or, modify the table to change the high bound for the last partition.
- ORA-14769: cannot interval [sub]partition or autolist [sub]partition nested table or XMLType with object-relational storage
Cause: Interval [sub] partition or autolist [sub]partition was not supported for nested table and XMLType with object-relational storage.
Action: Use a list or range partition instead.
- ORA-14770: Cannot use an XML virtual column whose expression uses EXTRACTVALUE operator to interval [sub]partition a table
Cause: Interval [sub]partition is not supported with an XML virtual column whose expression include the EXTRACTVALUE operator
Action: Use XMLCAST and XMLQUERY operators to define the virtual column expression for the partitioning key during interval [sub]partition.
Cause: An attempt was made to partition a table using a Hash composite method.
Action: Do not partition the table by a Hash composite method.