| PLS-00540 | PLS-00540: object not supported in this context. |
| Cause | An object was declared inside a local scope (Function, Procedure, or anonymous block), or in a package scope which is not supported. |
| Action | Declare the type in a global or data base scope. |
| PLS-00541 | PLS-00541: size or length specified is too large. |
| Cause | A length or size that is too large was specified for a data item. |
| Action | Specify a smaller value and retry the operation. |
| PLS-00542 | PLS-00542: CLOB and NCLOB cannot use varying-width character sets in the server |
| Cause | A server type is being created with an embedded CLOB or NCLOB atttribute which uses a varying-width character set. |
| Action | Use VARCHAR2 instead of CLOB, or use a fixed-width character set. |
| PLS-00543 | PLS-00543: a PLSQL Table may not contain a nested table type or VARRAY. |
| Cause | An attempt was made to define a PLSQL table that contained a (possibly deeply) nested table type or VARRAY. Nested collection types are not supported. |
| Action | Remove the nested table type or VARRAY from the table. Then retry the operation. |
| PLS-00546 | PLS-00546: SELF may not be declared as a REF parameter. |
| Cause | SELF was declared as a ref parameter to a member function or procedure. SELF is not supported as a REF. |
| Action | Redeclare SELF as a value parameter. |
| PLS-00548 | PLS-00548: invalid use of operator. |
| Cause | A name of an operator is used as a qualifier or appears outside from sql context. |
| Action | Eliminate the use of operator name as a qualifier or place it in a sql clause. |
| PLS-00550 | PLS-00550: character set specification is not allowed for this type |
| Cause | A character set specification was made on a type that does not require one. |
| Action | Remove the character set specification, or change the type. |
| PLS-00551 | PLS-00551: character set ANY_CS is only allowed on a subprogram parameter |
| Cause | The character set ANY_CS was specified when it is not allowed. |
| Action | Change or remove the character set specification. |
| PLS-00552 | PLS-00552: flexible character set is not allowed on component element |
| Cause | ANY_CS or %CHARSET was used to reference an ANY_CS parameter which is not a CHAR, VARCHAR2, or CLOB type. ANY_CS or %CHARSET is not allowed for fields of a record , object, elements of a collection, etc. |
| Action | Change or remove the character set specification. |
| PLS-00553 | PLS-00553: character set name is not recognized |
| Cause | An unrecognized name appears in a character set specification. |
| Action | Change or remove the character set specification. |
| PLS-00554 | PLS-00554: character set has already been determined |
| Cause | A redundant or conflicting character set was specified. |
| Action | Remove the CHARACTER SET specification, or change the character set specified. |
| PLS-00555 | PLS-00555: default expressions are not allowed for SQL operators |
| Cause | A default expression has been specified for a SQL operator. |
| Action | Eliminate the default expression from the operator. |
| PLS-00560 | PLS-00560: character set mismatch |
| Cause | An expression was used that has the wrong character set for this context. |
| Action | Adjust the expression, using TRANSLATE(... USING ...) or by rethinking the logic. |
| PLS-00561 | PLS-00561: character set mismatch on value for parameter "string" |
| Cause | An expression was used that contains an incorrect character set. The actual argument has a character set conflict. If a default argument value is being used, it might be in conflict with some actual argument that must have the same character set. |
| Action | Adjust the expression, using TRANSLATE(... USING ...) or change the character set. |
| PLS-00562 | PLS-00562: a function must return a type. |
| Cause | The current function was definied to return something other than a data type. |
| Action | Make sure the function is returning a data type. |
| PLS-00563 | PLS-00563: illegal use of CAST expression |
| Cause | CAST (in PLSQL) was used outside of a DML scope. |
| Action | Do not use CAST outside DML statements. |
| PLS-00564 | PLS-00564: lob arguments are not permitted in calls to remote server |
| Cause | use of lob argument in call to remote server |
| Action | Do not use LOBs in call to remote server |
| PLS-00565 | PLS-00565: %s must be completed as a potential REF target (object type) |
| Cause | Incomplete library units that are potential targets of REF dependencies must be completed so that they continue to remain potential targets of REF dependencies (since there might be library units with REF dependencies on this library unit). Potential REF targets include complete and incomplete object types. This error happened because an attempt was made to complete a potential REF target as something other than a potential REF target. |
| Action | Use another name for this library unit, or drop the original incomplete library unit. |
| PLS-00566 | PLS-00566: type name "string" cannot be constrained |
| Cause | A lob, date, boolean, rowid, or mlslabel type was constrained with a length specification. For example: X BLOB(5); |
| Action | Remove the constraint. |
| PLS-00567 | PLS-00567: cannot pass NULL to a NOT NULL constrained formal parameter |
| Cause | You attempted to pass NULL to a NOT NULL constrained parameter. |
| Action | Pass a NOT NULL expression instead. |
| PLS-00568 | PLS-00568: cannot access rows from a non-nested table item |
| Cause | You attempted to use TABLE expression, from a non-nested table |
| Action | pass the correct parameter |
| PLS-00569 | PLS-00569: numeric overflow or underflow |
| Cause | A constant literal is either too large or too small to fit in an Oracle number |
| Action | Change the value of the literal |
| PLS-00570 | PLS-00570: different number of columns in the multiset and cast expressions |
| Cause | Number of columns in the collection returned by MULTISET and the number of columns for the CAST type don"t match. For example: create type tab_obj as object (n number); create type tab1 as table of tab_obj; create table tab2 (col1 number, col2 number); select CAST(MULTISET(select col1, col2 from tab2) as tab1) from tab2; |
| Action | none |
| PLS-00571 | PLS-00571: method access through data base link not yet supported on client side |
| Cause | Remote link is used with on client side |
| Action | Create a dummy function to call symbolic link on server side or wiat till it is implemented |
| PLS-00572 | PLS-00572: improper constraint form used |
| Cause | number" types cannot have a range. user-defined aggregate types and integer types cannot have scale or precision specified. Example: "x number(5,3)" is acceptable but "x number range 1..10" is not. |
| Action | Remove the constraint |
| PLS-00573 | PLS-00573: cannot constrain scale, precision, or range of an anchored type declaration |
| Cause | A variable declared with %TYPE or %ROWTYPE cannot have a scale, precision, or range constraint. Example: x y%TYPE(10) is not acceptable. It is legal to add "NOT NULL" or non-conflicting CHARACTER SET constraints to anchored type declarations. |
| Action | Remove the constraint or use a type name instead of an anchored type. |
| PLS-00580 | PLS-00580: supertype must be an object type |
| Cause | An attempt was made to declare an object type to have a supertype, but the specified supertype was not itself an object type. Object types can inherit only from other object types. |
| Action | Remove the supertype specification, or change it to refer to an object type. If the declaration appears correct, make sure the supertype has compiled correctly. |
| PLS-00581 | PLS-00581: inheritance is not supported for opaque types |
| Cause | An attempt was made to declare an opaque type with a supertype. |
| Action | Remove the supertype specification. |
| PLS-00582 | PLS-00582: attribute declarations are not allowed in opaque types |
| Cause | An attempt was made to declare an attribute in an opaque type. |
| Action | Remove the attribute declaration. |
| PLS-00583 | PLS-00583: size must be specified if opaque type is fixed-length |
| Cause | An attempt was made to declare a fixed-length opaque type without specifying an explicit size. |
| Action | Specify an explicit size, or change the declaration to be varying-length. |
| PLS-00584 | PLS-00584: size of an opaque type must be between 1 and 4000 bytes |
| Cause | An attempt was made to specify an explicit size for an opaque type, but the specified size was out of the valid range. |
| Action | Change the explicit size to be between 1 and 4000 bytes, or change the declaration to be varying-length without an explicit size. |
| PLS-00585 | PLS-00585: declared support library for opaque type is not a library |
| Cause | An attempt was made to name a support library for an opaque type, but the name refers to an object that is not a library. |
| Action | Change the declaration to name a valid library. |
| PLS-00586 | PLS-00586: a static method cannot declare a parameter named SELF |
| Cause | An attempt was made to name a parameter SELF when declaring a static method. SELF is reserved as a parameter name in methods, to hold the object instance on which the method is applied. A parameter named SELF is not allowed in static methods because static methods do not apply to a particular object instance. |
| Action | Change the name of the parameter in the declaration. |
| PLS-00587 | PLS-00587: a static method cannot be invoked on an instance value |
| Cause | An attempt was made to use an object instance value, not a typename, as the qualifier of the name of a method invocation, but only a typename can be used as the qualifier when calling a static method. |
| Action | Use the typename, not an object instance value, to qualify the name of a method if the method is static. |
| PLS-00588 | PLS-00588: unqualified instance attribute references allowed only in member methods |
| Cause | An attempt was made to use the name of an object instance attribute in the body of a static method, or in an initialization default value on another attribute. If the instance attribute is not qualified with a particular object instance that supplies a value, the instance attribute can be named only when it is inside a member method. |
| Action | Qualify the attribute reference with the name of an object value, or change the containing method to a member method rather than a static method. |
| PLS-00589 | PLS-00589: no attributes found in object type "string" |
| Cause | Table of non adt type is defined. |
| Action | Table of type should be of ADT type only |
| PLS-00590 | PLS-00590: attempting to create a subtype UNDER a FINAL type |
| Cause | An attempt was made to create a subtype UNDER a FINAL type. |
| Action | Avoid deriving a subtype from this FINAL type. |
| PLS-00591 | PLS-00591: this feature is not supported in client-side programs |
| Cause | One of the following features was used in a wrong context: pragma AUTONOMOUS_TRANSACTION, dynamic SQL statements, (e.g. EXECUTE IMMEDIATE), and bulk binds. These listed features can only be used in server-side programs but not client-side programs. |
| Action | Remove it or define a server-side subprogram to do the work and call the subprogram from the client. |
| PLS-00592 | PLS-00592: the type of a object table must be an object type |
| Cause | You have defined a typed-table of a non-object type. |
| Action | Replace the non-object type with an object-type. |
| PLS-00593 | PLS-00593: default value of parameter "string" in body must match that of spec |
| Cause | The default value initialization of a parameter in a subprogram body contained in a package body did not match that of the corresponding subprogram specification in the corresponding package specification. |
| Action | Change the default initialization of the parameter in body to match that of spec. |
| PLS-00594 | PLS-00594: the SELF parameter can be declared only as IN or as IN OUT |
| Cause | The SELF parameter was declared as an OUT parameter. |
| Action | Declare the SELF parameter as either an IN or an IN OUT parameter. |
| PLS-00595 | PLS-00595: the TABLE operator is not allowed in this context |
| Cause | This feature is not yet implemented. |
| Action | Don"t use weak ref cursors with bulk binds. |
| PLS-00597 | PLS-00597: expression "string" in the INTO list is of wrong type |
| Cause |
This exception is raised for the following errors: - the expression in INTO clause of OPEN or RETURNING statement is neither of legal SQL datatypes nor of PL/SQL RECORD datatype. - a collection of records is used in INTO clause of OPEN or RETURNING statement. - a record or a collection of records is used in BULK COLLECT INTO. |
| Action | Use expression with correct datatype in the INTO clause |
| PLS-00598 | PLS-00598: comparison of object with NULL using "string" is not allowed |
| Cause | An object is compared with NULL using a relational operator. |
| Action | Use IS NULL comparison operator. |
| PLS-00599 | PLS-00599: SAMPLE percentage must be in the range [0.000001,100) |
| Cause | The percentage number is not in the range [0.000001,100) |
| Action | Use a percentage number in the range [0.000001,100) |
| PLS-00600 | PLS-00600: SAMPLE cannot be applied to a remote object |
| Cause | SAMPLE applying to a remote object is not supported |
| Action | Do not use SAMPLE with a remote object |
| PLS-00601 | PLS-00601: partition extended object names may only be used with tables |
| Cause | User attempted to use a partition-extended object name with an object which is not a table. |
| Action | Avoid using partition-extended name syntax with objects which are not tables |
| PLS-00602 | PLS-00602: CUBE and ROLLUP may appear only in a GROUP BY clause |
| Cause | User attempted to use the keywords CUBE or ROLLUP outside a GROUP BY clause |
| Action | Avoid using the keywords CUBE and ROLLUP outside the GROUP BY clause |
| PLS-00603 | PLS-00603: GROUPING function supported only with GROUP BY CUBE or ROLLUP |
| Cause | User attempted to use the GROUPING function without GROUP BY CUBE or GROUP BY ROLLUP |
| Action | Avoid using the GROUPING function without GROUP BY CUBE or ROLLUP |
| PLS-00604 | PLS-00604: aggregate function is not allowed here |
| Cause | One of the functions, such as AVG, COUNT, MAX, MIN, SUM, STDDEV or VARIANCE, was used in a WHERE or GROUP BY clause |
| Action | Remove the group function from the WHERE or GROUP BY clause. The desired result may be achieved by including the function in a subquery or HAVING clause. |
| PLS-00605 | PLS-00605: set operators are not yet supported as an argument to a MULTISET operator |
| Cause | A set operator was used in a subquery that was the argument to a MULTISET operator. |
| Action | Rewrite your SQL statement so that it does not use a set operator in the subquery that is the argument to the MULTISET operator. |
| PLS-00606 | PLS-00606: cursor subquery is not supported on client side in this release |
| Cause | A query that contains a cursor subquery is being used from client side. |
| Action | Use this feature from serevr side only. |
| PLS-00607 | PLS-00607: SQLJ Object Types can have only SQLJ Types as its supertype or subtype |
| Cause | You were trying to create a SQLJ Object Type under a non-SQLJ Object Type. |
| Action | Recreate the type as a SQLJ Object Type. |
| PLS-00608 | PLS-00608: the value of the USING clause must match that of the supertype |
| Cause | You were trying to create a SQLJ Object Type with a different value of the USING clause from the USING clause specified in its supertype. |
| Action | Change the value of the USING clause to match the USING clause in its supertype. |
| PLS-00609 | PLS-00609: the OVERRIDING clause is not valid for SQLJ Object Types |
| Cause | You were trying to a SQLJ Object Type method that override an inherited method. |
| Action | Change the SQLJ Object Type defintion by removing the OVERRIDING method. |
| PLS-00610 | PLS-00610: ROW can be used only once in SET clause of UPDATE statement |
| Cause | You were trying to use ROW more than once in UPDATE statement. |
| Action | Remove all the additional ROW in set clause of UPDATE statement. |
| PLS-00611 | PLS-00611: right hand side can be only the variables of record type |
| Cause | with ROW on LHS, only PL/SQL records or %ROWTYPE variables are allowed on right hand side.. |
| Action | Make appropriate changes, so that right hande side should only have variables of record or %ROWTYPE. |
| PLS-00612 | PLS-00612: Number of attributes do not match in SET clause |
| Cause | Number of columns do not match with number of attributes on record type on rhs. |
| Action | Make sure that number of columns match with the number of attributes in record on rhs. |
| PLS-00613 | PLS-00613: only one item is allowed, when using variables of record type |
| Cause | You are trying to use more than one values in VALUES clause or RETURNING INTO clause, when one of the value is of record type.. |
| Action | Specify only one variable of record type, or don"t use variables of record type. |
| PLS-00614 | PLS-00614: creating a FINAL NOT INSTANTIABLE type |
| Cause | An attempt was made to create a FINAL NOT INSTANTIABLE type. No useful operation can be performed with this type. |
| Action | Avoid using the keywords FINAL and NOT INSTANTIABLE together when creating types. |
| PLS-00615 | PLS-00615: type mismatch found at "string" between CASE operand and WHEN operands |
| Cause | In a simple CASE statement or expression, the CASE operand and WHEN operands do not match in datatype, and it is unclear which implicit conversion is required to correct the mismatch. |
| Action | Change the CASE operand and WHEN operands so that their datatypes match. Consider using datatype conversion functions in the CASE operand and/or WHEN operands. |
| PLS-00616 | PLS-00616: type mismatch found at "string" among result expressions in a CASE expression |
| Cause | In a CASE expression, the result expressions do not match in datatype, and it is unclear which implicit conversion is required to correct the mismatch. |
| Action | Change the result expressions so that their datatypes match. Consider using datatype conversion functions in the result expressions. |
| PLS-00617 | PLS-00617: at least one result in the CASE expression must not be NULL |
| Cause | All the results in the CASE expression are the literal NULL. |
| Action | Change at least one result in the CASE expression to be non-NULL. |
| PLS-00618 | PLS-00618: type mismatch found at "string" between operands in a NULLIF expression |
| Cause | In a NULLIF expression, the two operands do not match in datatype, and it is unclear which implicit conversion is required to correct the mismatch. |
| Action | Change the operands so that their datatypes match. Consider using datatype conversion functions in the operands. |
| PLS-00619 | PLS-00619: the first operand in the NULLIF expression must not be NULL |
| Cause | The first operand in the NULLIF expression is the literal NULL. |
| Action | Change the first operand in the NULLIF expression to be non-NULL. |
| PLS-00620 | PLS-00620: type mismatch found at "string" among operands in a COALESCE expression |
| Cause | In a COALESCE expression, the operands do not match in datatype, and it is unclear which implicit conversion is required to correct the mismatch. |
| Action | Change the operands so that their datatypes match. Consider using datatype conversion functions in the operands. |
| PLS-00621 | PLS-00621: at least one operand in the COALESCE expression must not be NULL |
| Cause | All the operands in the COALESCE expression are the literal NULL. |
| Action | Change at least one operand in the COALESCE expression to be non-NULL. |
| PLS-00622 | PLS-00622: range constraints must be between -2147483647 and 2147483647 |
| Cause | The range constraints specified for a pls_integer or binary_integer declaration did not fall between -2147483647 and 2147483647. |
| Action | Use range constraints between -2147483647 and 2147483647. |
| PLS-00623 | PLS-00623: FLOAT precision constraint must be between 1 and 126 |
| Cause | The precision specified for a FLOAT, REAL or DOUBLE PRECISION did not fall between 1 and 126. |
| Action | Use precision constraints between 1 and 126. |
| PLS-00624 | PLS-00624: USING clause must be used with either aggregate or pipelined functions |
| Cause | USING clause cannot be used with functions that are not declared with AGGREGATE or PIPELINED properties. |
| Action | Define function body in PL/SQL or some other language (using external callout call specification). |
| PLS-00625 | PLS-00625: PARTITION/CLUSTER/ORDER-BY clause can only be used with IN parameters |
| Cause | A PARTITION/CLUSTER/ORDER-BY clause was used with an OUT or IN OUT ref-cursor parameter. |
| Action | Change the parameter mode to IN or use some other parameter with the PARTITION/CLUSTER/ORDER-BY clause. |
| PLS-00626 | PLS-00626: partitioned/clustered/ordered parameter must be a function argument |
| Cause | A partitioning or clustering/ordering specification specified on an argument that is not one of the function arguments. |
| Action | Specify partitioning/clustering/ordering based on the function ref-cursor formal argument. |
| PLS-00627 | PLS-00627: "string" must be a strongly typed ref cursor |
| Cause | A partitioning or clustering/ordering specification specified on an argument that is not a strongly typed ref cursor. |
| Action | Specify partitioning/clustering/ordering based on the function ref-cursor formal argument. |
| PLS-00628 | PLS-00628: "string" must be a valid record attribute |
| Cause | A partitioning or clustering/ordering specification must use only valid record attributes. |
| Action | Specify partitioning/clustering/ordering based on valid record attributes. |
| PLS-00629 | PLS-00629: PIPE statement cannot be used in non-pipelined functions |
| Cause | A PIPE statement was used in a non-pipelined function. |
| Action | Use PIPE statement only in pipelined functions. |
| PLS-00630 | PLS-00630: pipelined functions must have a supported collection return type |
| Cause | A pipelined function was specified with an unsupported return type. The following are not supported as return types of pipelined functions: |
| Action | Specify a supported collection type as the pipelined function return type. |
| PLS-00631 | PLS-00631: PARTITION-BY and CLUSTER/ORDER-BY clauses must be used with the same function argument |
| Cause | PARTITION-BY and CLUSTER/ORDER-BY clauses are specified on different function arguments. |
| Action | Use the same argument in both PARITITON-BY and CLUSTER/ORDER-BY clauses. |
| PLS-00632 | PLS-00632: NOT INSTANTIABLE method cannot have a body |
| Cause | An attempt was made to provide an implementation for a NOT INSTANTIABLE method. |
| Action | Remove the implementation for the NOT INSTATIABLE method. |
| PLS-00633 | PLS-00633: RETURN statement in a pipelined function cannot contain an expression |
| Cause | A RETURN statement in a pipelined function contains an expression, which is not allowed. Pipelined functions must send back values to the caller by using the PIPE statement. |
| Action | Remove the expression from the RETURN statement and use a PIPE statement to return values. Else, convert the function into a non-pipelined function. |
| PLS-00634 | PLS-00634: type with NOT INSTANTIABLE methods must be declared NOT INSTANTIABLE |
| Cause | The type being created contains NOT INSTANTIABLE methods, either declared or inherited. The type must be explicitly declared NOT INSTANTIABLE |
| Action | Explicitly specify the NOT INSTANTIABLE keyword or provide implementations for all the NOT INSTANTIABLE methods. |
| PLS-00635 | PLS-00635: method does not override |
| Cause | The method specification contains the OVERRIDING keyword but the method does not override a method in the ancestor types. |
| Action | Check the method specification. |
| PLS-00636 | PLS-00636: overriding method requires OVERRIDING keyword |
| Cause | An attempt was made to provide an overriding method specification, but the OVERRIDING keyword was not specified. |
| Action | Modify the method specification and specify the OVERRIDING keyword. |
| PLS-00637 | PLS-00637: FINAL method cannot be overriden or hidden |
| Cause | An attempt was made to override a FINAL MEMBER method or hide a FINAL STATIC method. |
| Action | Avoid overriding FINAL MEMBER methods or hiding FINAL STATIC methods |
| PLS-00638 | PLS-00638: cannot overload MAP method |
| Cause | The MAP method does override the inherited one. |
| Action | Make the specifications match. |
| PLS-00639 | PLS-00639: NCHAR/NVARCHAR2 cannot be byte length semantics |
| Cause | NCHAR/NVARCHAR can only be codepoint length sematics. BYTE qualifiers used with NCHAR is illegal: nc NCHAR(7 BYTE); name NVARCHAR2(10 byte); |
| Action | Remove BYTE qualifier to make it as codepoint length semantics |
| PLS-00640 | PLS-00640: a pipelined function cannot be called from PL/SQL context |
| Cause | A pipelined function was invoked from a PL/SQL expression. |
| Action | Use the pipelined function in the FROM clause of a SQL query. |
| PLS-00641 | PLS-00641: INTO clause not allowed for this SELECT statement |
| Cause | A SELECT statement in a cursor definition, an OPEN statement or a cursor FOR loop has an erroneous INTO clause. |
| Action | Remove the INTO clause. |
| PLS-00642 | PLS-00642: local collection types not allowed in SQL statements |
| Cause | A locally-defined (i.e. not schema level) collection type was used in a SQL statement. The type must be defined in a schema to be accepted in a SQL statement. |
| Action | Define the collection type in your schema, not inside a PL/SQL subprogram. |
| PLS-00643 | PLS-00643: booleans, index tables, records and cursors not allowed in SQL statements |
| Cause | Items of type boolean, table of foo index by binary_integer, record and static cursors cannot be used in SQL statements. |
| Action | Remove expressions of these types from the SQL statement. |
| PLS-00644 | PLS-00644: character set mismatch found at "string" among result expressions in a CASE expression |
| Cause | In a CASE expression, the result expressions do not match in character set, and it is unclear which implicit conversion is required to correct the mismatch. |
| Action | Change the result expressions so that their character sets match. |
| PLS-00645 | PLS-00645: character set mismatch found at "string" among operands in a COALESCE expression |
| Cause | In a COALESCE expression, the operands do not match in character set and it is unclear which implicit conversion is required to correct the mismatch. |
| Action | Change the operands so that their character sets match. |
| PLS-00646 | PLS-00646: MAP or ORDER method must be defined in the root of the subtype hierarchy |
| Cause | An attempt was made to define a MAP or ORDER method in a subtype. |
| Action | Define the MAP or ORDER method in the root of the subtype hierarchy. You can override MAP methods in subtypes. |
| PLS-00647 | PLS-00647: attribute by name "string" conflicts with method by same name |
| Cause | While creating a subtype some attribute name conflicted with a method name. |
| Action | Use a different name for attribute or method in the type being created. |
| PLS-00648 | PLS-00648: type of supertype attribute "string" can not be a subtype or reference to a subtype in this release |
| Cause | User tried to complete a type, Tsub as a subtype of another type, Tsuper where Tsuper contained an attribute of type Tsub or of type REF to Tsub. This is an implementation restriction. |
| Action | Change the design of code to not use any type with attribute whose type is of subtype or REF to subtype. |
| PLS-00649 | PLS-00649: method "string" can be overridden only once per object type |
| Cause | User tried to override the method more than once in the same subtype. |
| Action | Either make this an extra overload by removing the OVERRIDING keyword where the method signature is different. The argument types should be reconsidered otherwise. |
| PLS-00650 | PLS-00650: invalid type for PARTITION/CLUSTER/ORDER BY clause |
| Cause | Uer tried to use invalid type for PARTITION/CLUSTER?ORDER BY clause. |
| Action | Use legal allowed types. |
| PLS-00651 | PLS-00651: implementation type in Aggregate/Table function should be a valid type |
| Cause | User tried to use some other database object like a package to define implementation type of an aggregate/table function. |
| Action | Use a valid user defined type as implementation type. |
| PLS-00652 | PLS-00652: aggregate functions should have exactly one argument |
| Cause | User tried to create aggregate function with either 0 or more than one arguments. |
| Action | Do not create aggregate function with 0 or more than one argument. |
| PLS-00653 | PLS-00653: aggregate/table functions are not allowed in PL/SQL scope |
| Cause | User tried to use a table/aggregate function in PL/SQL scope. |
| Action | Do not use table/aggregate function in PL/SQL scope. |
| PLS-00654 | PLS-00654: PARTITION/ORDER/CLUSTER BY are allowed for only with PARALLEL_ENABLE |
| Cause | User tried partion by order by cluster by without parallel enable clause in table function. |
| Action | specify parallel enable also when using partion by, cluster by order by clause. |
| PLS-00655 | PLS-00655: only functions can be declared as PIPELINED |
| Cause | user is trying to declare a procedure to be pipeliend function |
| Action | declare a function instead of a procedure to be a pipelined function |
| PLS-00656 | PLS-00656: field "string" not available in input argument |
| Cause | An EXTRACT operation specified a field that was not present. For example, you tried to extract the YEAR field from a TIME variable. |
| Action | Specify a legal field in the call to EXTRACT. |
| PLS-00657 | PLS-00657: Implementation restriction: bulk SQL with associative arrays with VARCHAR2 key is not supported. |
| Cause | Variable or expression of associative array type was used as bulk SQL bind or define. |
| Action | Use colleciton types supported by bulk SQL. |
| PLS-00658 | PLS-00658: constructor method name must match type name |
| Cause | The name of the object type constructor does not match the type name. |
| Action | Change the name of the constructor method to match the type name. |
| PLS-00659 | PLS-00659: constructor method must return SELF AS RESULT |
| Cause | The return clause of the constructor method did not specify SELF AS RESULT. |
| Action | Change the return clause to include RETURN SELF AS RESULT. |