Foi-me pedido para traduzir um post anterior.
Apresento aqui um Script para mostrar o número de registos (linhas) para todas as tabelas.
Correr com "
SET SERVEROUTPUT ON
".
DECLARE
li_count INTEGER;
lv_table VARCHAR2 (61); --30+1+30 : owner||'.'||table_name
BEGIN
FOR c_table IN (SELECT owner, table_name FROM all_tables order by owner, table_name)
LOOP
lv_table := c_table.owner || '.' || c_table.table_name;
EXECUTE IMMEDIATE 'SELECT COUNT(*) FROM ' || lv_table INTO li_count;
DBMS_OUTPUT.put_line (rpad(lv_table,62,'.') || li_count);
END LOOP;
END;
-- uma amostra do output
MDSYS.OGIS_GEOMETRY_COLUMNS...................................0
MDSYS.OGIS_SPATIAL_REFERENCE_SYSTEMS..........................0
MDSYS.SDO_COORD_AXES..........................................139
MDSYS.SDO_COORD_AXIS_NAMES....................................28
MDSYS.SDO_COORD_OP_METHODS....................................82
MDSYS.SDO_COORD_OP_PARAMS.....................................153
MDSYS.SDO_COORD_OP_PARAM_USE..................................680
MDSYS.SDO_COORD_OP_PARAM_VALS.................................9534
Se quiser pode no select limitar por schema e pode também alterar o programa para, em vez de mandar para o output, guardar o resultado numa tabela para depois poder por exemplo ordenar por número de linhas.
No comments:
Post a Comment
Os comentários são moderados.
The comments are moderated.