Oracle - Como puedo crear/declarar/llenar un cursor a partir de otro

 
Vista:

Como puedo crear/declarar/llenar un cursor a partir de otro

Publicado por Fernanda (37 intervenciones) el 08/04/2015 15:48:03
Hola,

Como puedo crear/declarar/llenar un cursor a partir de otro??

tengo un procedimiento que debe devolver un cursor dependiendo de un dato (filtro), para esto declaro 8 cursores, que obtienen los mismos datos pero de distintas tablas.

Entonces los datos que devuelvo dependerán del filtro ingresado y en vez de copiar el codigo por cada cursor (que está mas abajo) quiero que ese codigo sea unico .

En vez de colocar este codigo por cada cursor que tenga
FOR unRegistro IN RCursor1 LOOP
pnombre(cont) :=unRegistro.nombre;
cont := cont + 1;
END LOOP;

quiero (si es que se puede) algo asi:

if filtro = 1 then
rcursorFinal = Rcursor1
elseif filtro = 2 then
rcursorFinal = Rcursor2
end if

FOR unRegistro IN rcursorFinal LOOP
pnombre(cont) :=unRegistro.nombre;
cont := cont + 1;
END LOOP;
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder