
18/06/2010, 08:26
|
 | | | Fecha de Ingreso: agosto-2005 Ubicación: Cuba
Mensajes: 86
Antigüedad: 19 años, 5 meses Puntos: 1 | |
Como utilizar un rowtype dinámico Hola, comunidad.
Estoy desarrollando sobre Oracle y necesito realizar varias consultas a varias tablas, por lo cual sería conveniente hacerlo de forma dinámica. El problema -archiconocido por demás, a pesar de lo cual no he podido encontrar una solución-, es que no sé cómo declarar ese %rowtype dinámico, dependiendo de un parámetro que recibe la función, y menos aún devolverlo para mostrar el resultado de la consulta en la aplicación.
Algo más o menos así:
function obtener(tabla varchar2, columna varchar2) return rowtype
is
curGen is ref cursor;
curObj curGen;
registro tabla%rowtype;
-- o tal vez algo como esto: registro curObj%rowtype;
sentencia varchar2(100);
begin
sentencia := 'select ' || columna || ' from ' || tabla;
open curObj for sentencia;
fetch curObj into registro;
close curObj;
return registro;
end obtener;
Gracias de antemano. |