Oracle Error PLS-00509: Implementation Restriction : Pass a returned record to a temporary identifier before selecting a field

Oracle Error Message

PLS-00509: Implementation Restriction : Pass a returned record to a temporary identifier before selecting a field

Reason for the Error

Illegal syntax was used to call a parameter-less function that returns a record or a PL/SQL table of records. When calling a function that takes parameters and returns a record, you use the following syntax to reference fields in the record: function_name(parameters).field_name However, you cannot use the syntax above to call a parameter-less function because PL/SQL does not allow empty parameter lists. That is, the following syntax is illegal: function_name().field_name — illegal; empty parameter list You cannot just drop the empty parameter list because the following syntax is also illegal: function_name.field_name — illegal; no parameter list.

Solution

Declare a local record or PL/SQL table of records to which you can assign the function result, then reference its fields directly.

Share:

Leave A Reply

Your email address will not be published. Required fields are marked *

You May Also Like

Oracle Error Message ORA-24328: illegal attribute value Reason for the Error The attribute value passed in is illegal. Solution Consult...
Oracle Error Message ORA-01346: LogMiner processed redo beyond specified reset log scn Reason for the Error LogMiner has detected a...
Oracle Error Message ORA-13241: specified dimensionality does not match that of the data Reason for the Error An error occurred...