Implicit statement results in Oracle Database 12c
Oracle Database 12c allows a stored subprogram to return a result set implicitly using the DBMS_SQL
package, and not just through the REF CURSOR
variable. The new functionality is designed to ease the migration of non-Oracle application programs to Oracle.
Prior to this enhancement in Oracle Database 12c, the only way a PL/SQL stored subprogram could share a result set was through OUT REF CURSOR
parameters. Later, parameter binding was required at the client end to retrieve the result sets.
The cursor is returned to the calling environment using new overloaded subprograms: RETURN_RESULT
and GET_NEXT_RESULT
. The GET_NEXT_RESULT
can be used if the cursor query returns multiple result sets. The prototype for RETURN_RESULT
is as follows:
PROCEDURE RETURN_RESULT (param_res IN OUT SYS_REFCURSOR, to_client IN BOOLEAN DEFAULT TRUE); PROCEDURE RETURN_RESULT (param_res IN OUT INTEGER, to_client IN BOOLEAN...