Lo siento mucho, pero no veo manera de que el cursor me devuelva todos los registros que quiero mostrar.
De la manera que te muestro a continuacion, me los imprimer bien, pero quiero que me los devuelva en forma de consulta ya que quiero hacer en una consulta aparte un selec * from tabla where id_personal in (y aquí la consulta del cursor).
¿entiendes lo que quiero hacer? La consulta del in es la que quiero crear de manera dinámica ya que dependiendo unos casos u otros debe de ser diferente.
Código:
declare
TYPE t_ClassesRooms IS REF CURSOR;
v_CursorVar t_ClassesRooms;
mi_RegistroCursor number;
var varchar2(1000);
begin
var := 'select id_personal from tabla_personal';
OPEN v_CursorVar for var;
loop
fetch v_CursorVar into mi_RegistroCursor;
exit when v_CursorVar%notfound;
-- proceso que quieras realizar con cada registro del cursor
dbms_output.put_line(mi_RegistroCursor);
end loop;
CLOSE v_CursorVar;
end;
Un saludo.