Oracle: Tabellen einer Datenbank mit Anzahl der Datensätze auflisten

Mit dieser Funktion erhalten Sie alle Tabellen der Datenbank inkl. der aktuellen Anzahl an gespeicherten Datensätzen. Zusätzlich werden die Summen (Tabellenanzahl, Datensätze) angezeigt:

declare
  cnt number;
  total number := 0;
  tabs number := 0;
begin
  for x in (
    select owner || '.' || table_name tab 
    from dba_tables) 
  loop
    execute immediate 'select count(*) from ' || x.tab into cnt;
    total := total + cnt;
    tabs := tabs + 1;
    dbms_output.put_line('Table: ' || x.tab || ', Record count: ' || TO_CHAR(cnt));
  end loop;

  dbms_output.put_line('Total ' || TO_CHAR(total) || ' rows in ' || TO_CHAR(tabs) || ' tables');
end;