Oracle desde la versión 11g permite retornar un conjunto resultado de una sentencia SELECT de modo implícito (sin usar una variable de tipo sys_refcursor como parámetro de salida) invocando a la función RETURN_RESULT del paquete DBMS_SQL . SYS_REFCURSOR es un tipo de datos que representa un cursor o área de memoria donde se almacena temporalmente un conjunto resultado permitiendo recuperar una a una cada fila. A continuación se presenta un ejemplo que recupera filas de la tabla empleados: create or replace procedure select_employees as rf_cursor_employees SYS_REFCURSOR ; begin open rf_cursor_employees for SELECT employee_id,first_name,last_name,salary,email,phone_number FROM HR.employees ORDER BY last_name,first_name; dbms_sql .return_result ( rf_cursor_employees ); end select_employees; Compilar con Oracle SQL Developer o SQL*Plus: Para su ejecución, se invoca al procedimiento SELECT_EMPLOYEES: exec select_emplo
Blog dedicado a la implementación de bases de datos en Oracle Database Free/Express Edition y productos Oracle relacionados.