Ir para conteúdo
Fórum Script Brasil
  • 0

Lista Todas As Tabelas E Contar Quantidade Registros


jothaz

Pergunta

Camaradas,

A procedure apresentada a seguir lista todas a tabelas do banco de dados (utilizando SELECT TABLE_NAME FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_TYPE='BASE TABLE') e conta a respectiva quantidade de registros de cada um.

--
CREATE PROC CONTAR_REGISTRO_TODAS_TABELAS
AS
    DECLARE @NOME_DA_TABELA VARCHAR(40), @COMANDO VARCHAR(4000)
    
    CREATE TABLE #QTDE_REGISTROS_TABELAS (NOME_TABELA VARCHAR(200), TOTAL_REGISTROS INT) 
    
    DECLARE MEU_CURSOR CURSOR FOR
    --
    --Seleciona todas as tabelas do BD
    SELECT TABLE_NAME FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_TYPE='BASE TABLE'
    OPEN MEU_CURSOR
    FETCH NEXT FROM MEU_CURSOR
    INTO @NOME_DA_TABELA
    
    WHILE @@FETCH_STATUS = 0
    BEGIN
        --
        --Monta comando dinâmico para contar o número de registros e 
        --insere em tabela 
        SET @COMANDO = 'INSERT INTO #QTDE_REGISTROS_TABELAS (NOME_TABELA, TOTAL_REGISTROS) SELECT ''' +   @NOME_DA_TABELA + ''', COUNT(*)  FROM ' +  @NOME_DA_TABELA
        --PRINT @COMANDO
        EXEC(@COMANDO)
    
        FETCH NEXT FROM MEU_CURSOR
        INTO @NOME_DA_TABELA
    END
    CLOSE MEU_CURSOR
    DEALLOCATE MEU_CURSOR
    --
    SELECT     * FROM #QTDE_REGISTROS_TABELAS
    DROP     TABLE #QTDE_REGISTROS_TABELAS
    --
GO
--

Considerações:

  1. Este é um emplo simples, caso seja necessário pode-ser passar um parâmetro com o nome da tabela ou mesmo criar um função.
Fonte/Autor/link

AUTOR: "Jothaz"

Dúvidas, criticas, contribuições, correções e adições serão bem vindas.

Link para o comentário
Compartilhar em outros sites

0 respostass a esta questão

Posts Recomendados

Até agora não há respostas para essa pergunta

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,1k
    • Posts
      651,8k
×
×
  • Criar Novo...