Realizar un COUNT(1) a varias tablas
Buenas tardes, el problema es el siguiente:
En un procedimiento se necesita una consulta que haga un count(*) a varias tablas. Estas tablas son consultadas desde un CURSOR y recorridas por con un FOR, el problema es que al hacer una consulta implicita no me detecta en el FROM el nombre de la tabla
[sql]DECLARE
CURSOR ELIMINAR_TABLAS_TEMP IS
SELECT TABLE_NAME
FROM USER_TABLES
WHERE TABLE_NAME LIKE ‘%E$_%’;
V_TRUNCAR VARCHAR2(1000);
V_DROP VARCHAR2(1000);
V_CONT NUMBER:=0;
BEGIN
FOR TABLA_TEMP IN ELIMINAR_TABLAS_TEMP
LOOP
[b]SELECT COUNT(*) INTO V_CONT FROM TABLA_TEMP.TABLE_NAME;
[/b]
/* V_TRUNCAR := ‘ TRUNCATE TABLE ‘||TABLA_TEMP.TABLE_NAME ;
EXECUTE IMMEDIATE V_TRUNCAR;
V_DROP := ‘ DROP TABLE ‘||TABLA_TEMP.TABLE_NAME ;
EXECUTE IMMEDIATE V_DROP;*/
dbms_output.put_line( ‘La tabla ‘||TABLA_TEMP.TABLE_NAME ||’ tiene: ‘ ||V_CONT );
END LOOP;
END;[/sql]