Achei uma query que funcionaou bem: 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 --