Oracle - Cursor con campos variables

   
Vista:

Cursor con campos variables

Publicado por Mary (1 intervención) el 17/12/2012 20:29:43
Hola, me gustarian que me ayudaran con los siguiente, estoy contruyendo una tabla temporal para almacenar los datos campos y registros de otra tabla, esto con el fin de compararla con la misma tabla en otro ambiente(desarrollo y testing) , estoy trebajando con cursores pero a la hora de leer una tabla para buscar el nombre del campo y despues buscar los registros por el campo no puedo leer bien el cursor, este es el codigo que llevo:

DECLARE
CURSOR datos_tabla
IS
SELECT owner, table_name, column_name
FROM SYS.all_tab_columns cols
WHERE cols.table_name = 'TBANCO'; -- lo busco de esta manera porq el nombre de la tabla sera un parametro de entrada

CURSOR registros (v_nombre_campo VARCHAR2)
IS
SELECT v_nombre_campo AS nombre
FROM TBANCO;

BEGIN
FOR datos IN datos_tabla
LOOP
-- DBMS_OUTPUT.put_line (datos.column_name);
FOR data_reg IN registros (datos.column_name)
LOOP
DBMS_OUTPUT.put_line ( 'Usuario: '
|| datos.owner
|| ' Tabla: '
|| datos.table_name
|| ' Columna: '
|| datos.column_name
|| ' Registro: '
|| data_reg.nombre -- esto me devulve el mismo nombre del campo, mas no el registro que es lo q necesito
);
END LOOP;
END LOOP;
END;
/

Si me pueden ayudar se los agradeceria :)
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