37 PLW-05000 to PLW-07204

PLW-05000: mismatch in NOCOPY qualification between specification and body
Cause: The indicated parameter was declared with the NOCOPY hint in the subprogram specification but not in the body, or it was declared with the NOCOPY hint in the body but not in the specification.
Action: Ensure that the specification and the body agree in their use of NOCOPY. If this mismatch is not corrected, the program will obey the declaration given in the specification, ignoring that in the body.
PLW-05001: previous use of "string" (at line string) conflicts with this use
Cause: While looking for prior declarations of a variable, constant, or label, the compiler found another declaration with the same name in the same scope. Or, the headers of subprogram in a package specification and body were not identical.
Action: Check the spelling of the variable, constant, or label name. Also check the names of all parameters and exceptions declared in the same scope. Then, remove or rename the object with the duplicate name. Or, change the headers of the packaged subprogram in the package specification or body so that they are identical.
PLW-05003: same actual parameter(string and string) at IN and NOCOPY may have side effects
Cause: The indicated parameter was declared with the NOCOPY hint in the subprogram specification but not in the body, or it was declared with the NOCOPY hint in the body but not in the specification.
Action: Ensure that the specification and the body agree in their use of NOCOPY. If this mismatch is not corrected, the program will obey the declaration given in the specification, ignoring that in the body.
PLW-05004: identifier string is also declared in STANDARD or is a SQL builtin
Cause: The indicated identifier was also either: o) declared in package STANDARD, or o) a SQL builtin function, or o) a pseudo-column. This situation can result in name resolution issues since the STANDARD/builtin declaration will be chosen over the local declaration in SQL statements; however the local declaration will be chosen over the STANDARD/builtin declaration outside SQL scope. (See the documentation on PL/SQL name resolution.)
Action: Either: o) rename the given identifier, o) qualify any references to the identifier with the containing scope"s name, or o) make sure the intended resolution occurs if using the identifier in SQL scope.
PLW-05005: function string returns without value at line string
Cause: The function exited without a return value. Return statements are required for all PL/SQL functions.
Action: Inspect the function source code for exit points, and place a return at each point so that no runtime error will be generated when the function exits. NLS_DO_NOT_TRANSLATE [5400,5401]
PLW-05006: shadow type generation resulted in warning: string
Cause: Compilation of a table function causes the creation of internally- generated types. A problem occurred during creation of these types which was not severe enough to prevent the creation of the types, but which may impact the usage of the table function. See the accompanying error message for more information.
Action: Fix the issue reported in the accompanying error message.
PLW-06002: Unreachable code
Cause: Static program analysis determined that some code on the specified line would never be reached during execution. This may come as a result of expression evaluation at compile time.
Action: Inspect program logic for possible defects. Disable the warning if much code is made unreachable intentionally and the warning message is more annoying than helpful.
PLW-06003: unknown inquiry directive "string"
Cause: An unknown inquiry directive was used. The inquiry directive is neither predefined nor user-defined.
Action: Use a predefined inquiry directive or define the inquiry directive.
PLW-07202: bind type would result in conversion away from column type
Cause: The column type and the bind type do not exactly match. This will result in the column being converted to the type of the bind variable. This type conversion may prevent the SQL optimizer from using any index the column participates in. This may adversely affect the execution performance of this statement.
Action: To make use of any index for this column, make sure the bind type is the same type as the column type.
PLW-07203: parameter "string" may benefit from use of the NOCOPY compiler hint
Cause: The mode of the specified parameter was IN OUT or OUT. Use of the NOCOPY compiler hint may speed up calls to this subprogram.
Action: Change the mode of the parameter to explicitly use the NOCOPY compiler hint. For example, if your subprogram declaration is: PROCEDURE proc(p1 IN OUT CLOB); you can change it to: PROCEDURE proc(p1 IN OUT NOCOPY clob); to get the benefit of the NOCOPY hint. For member procedures or functions in object types, you may have to explicitly declare the SELF parameter as illustrated in the following: MEMBER PROCEDURE proc(SELF IN OUT NOCOPY MY_TYPE);
PLW-07204: conversion away from column type may result in sub-optimal query plan
Cause: The column type and the bind type do not exactly match. This may result in the column being converted to the type of the bind variable. This type conversion may prevent the SQL optimizer from using any index the column participates in. This may adversely affect the execution performance of this statement.
Action: To make use of any index for this column, make sure the bind type is the same type as the column type.