Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Alex Fernando

[Resolvido] Contar registros de todas as tabelas do banco

Recommended Posts

Galera, estou ferrado aqui no trampo..

 

Tenho que estudar um banco novo, esse banco tem 5114 tabelas, mas como puder verificar muitas delas não estão populadas. Gostaria de saber qual query posso fazer pra identificar as tabelas que possuem registros no banco.

 

Tentei algo do tipo:

select count(object_id) from (select * from sys.tables) group by object_id having count(object_id)>1

 

Obviamente que deu errado, como posso fazer?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Já ache!!

 

Esse codigo abaixo, retorna todas as tabelas que possuem ao menos um registro e os seus registros:

 

SELECT OBJECT_NAME(OBJECT_ID) TableName, st.row_count

FROM sys.dm_db_partition_stats st

WHERE index_id < 2 and st.row_count>0

ORDER BY st.row_count DESC

Compartilhar este post


Link para o post
Compartilhar em outros sites

Deste modo funciona para SQL2008 ou posteriores. Poderia utilizar o que postei neste link: http://forum.imasters.com.br/topic/395856-espaco-de-cada-tabela-no-database/

 

[]´s

 

em tempo:

você pode utilizar a procedure nao documentada for_eachtable.

[]´s

Compartilhar este post


Link para o post
Compartilhar em outros sites

Deste modo funciona para SQL2008 ou posteriores. Poderia utilizar o que postei neste link: http://forum.imasters.com.br/topic/395856-espaco-de-cada-tabela-no-database/

 

[]´s

 

em tempo:

você pode utilizar a procedure nao documentada for_eachtable.

[]´s

Seria sp_msforeactable!

 

@autor

Tente algo assim:

 

sp_msforeachtable 'sp_spaceused ''?'''

 

note que ira retornar varios select, basta inseri-los em uma tabela.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.