PLS-01913: instance must be of type 'string' or one of its subtypes
Cause: The run-time type of the instance is the not declared type or one of its subtypes. That is, TREAT(supertype AS subtype) fails.
Action: Catch the exception.
PLS-01913: instance must be of type 'string' or one of its subtypes
Cause: The run-time type of the instance is the not declared type or one of its subtypes. That is, TREAT(supertype AS subtype) fails.
Action: Catch the exception.
PLS-01912: instance must be of type 'string'
Cause: The run-time type of the instance is not the declared type. That is, the return value of a user defined constructor is wrong.
Action: Return the correct type.
PLS-01911: associative array key violates its type constraints
Cause: The key value of an element being inserted into an associative array violates the key type constraints.
Action: Relax the constraints if the key value is meant to be acceptable. Otherwise, apply a valid key value when inserting an element.
PLS-01910: associative array shape is not consistent with session parameters
Cause: NLS parameters affecting comparison of keys have been altered dynamically. The associative array's index is invalid.
Action: Avoid using associative arrays with string keys in applications which require frequent changes of NLS_COMP or NLS_SORT.
PLS-01909: cannot assign supertype instance to subtype
Cause: An attempt was made to assign or copy a supertype instance to a container (destination) that can only hold a subtype instance.
Action: Make sure the runtime type of the source of the assignment or copy is the same type as the destination or is a subtype of the destination type.
PLS-01908: RETURNING INTO buffer too small
Cause: PL/SQL determined that a server side DML with a RETURNING INTO clause does not use a buffer that is large enough to hold the data being returned.
Action: Increase the size of the RETURNING INTO clause buffer.
PLS-01907: number precision too large
Cause: The number begin copied or assigned had too many digits to the left of the decimal and did not fit into its destination. In other words, there is a number precision mismatch. This error may also occur if, for example, an attempt is made to assign a character string to a number, as demonstrated below. a varchar2(4); b number(1,1); a := '10.1'; b := a;
Action: First, check explicit number precision value mismatches. If none are found, then consider implicit conversions of other types to numbers, including conversions performed during binds.
PLS-01906: raw variable length too long
Cause: The length of a raw variable being copied or assigned was too long to fit into its destination.
Action: Make sure the raw variable length is correct.
PLS-01905: character string buffer too small
Cause: An error was encountered while moving a character string from a source to a destination. This error occurs if, for example, an attempt is made to move a character string of 10 characters into a 1 character buffer. The cause of this error may not always be obvious. For example, the following will result in this error: a varchar2(1); b number; b := 10; a := b; An error results because an implicit conversion causes the number 10 to become the character string '10', which does not fit in the character buffer of 1 allocated for the variable a.
Action: First, look for character string assignment statements where the buffer size is mismatched. If there are none found, then consider the implicit conversion case illustrated in the example above.
PLS-01904: NULL index table key value
Cause: An attempt was made to index into a PL/SQL index table with a NULL key value.
Action: Make sure key values used to index into PL/SQL index tables are non-NULL.