quarta-feira, 7 de setembro de 2016

FIREBIRD - Procedure para retornar todas as tabelas e a quantidade de registros - Procedure to return all the tables and the number of records

Essa procedure retorna todas as tabelas e a quantidade de registros de cada tabela do Firebird.
CREATE OR ALTER PROCEDURE SP_TABLES_RECORD_COUNT
RETURNS (TABELA VARCHAR(255), QTDE INTEGER)
AS
BEGIN
  FOR SELECT RDB$RELATION_NAME FROM RDB$RELATIONS
  WHERE RDB$SYSTEM_FLAG = 0 AND RDB$VIEW_SOURCE IS NULL
  ORDER BY RDB$RELATION_NAME
  INTO :TABELA DO
  BEGIN
    EXECUTE STATEMENT ''SELECT COUNT(*) FROM '' || :TABELA INTO :QTDE;
    SUSPEND;
  END
END;
Uso:
SELECT * FROM SP_TABLES_RECORD_COUNT

Nenhum comentário:

Postar um comentário