Ir para conteúdo

POWERED BY:

Arquivado

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

nandoverona

selecionar todas as tabelas de todos os bancos

Recommended Posts

Olá galera!!!!Eu tenho um servidor com vários bds, e são criados vários dbs e várias tabelas todo dia. E eu quero selecionar todas as tabelas de todos os bancos com um select.Já tentei de várias formas, mas não consegui.AbraçosLuiz Fernando

Compartilhar este post


Link para o post
Compartilhar em outros sites

tem q verificar a tabela sysdatabases do master e depois sair verificando a tabela sysobjects de cada banco, e finalmente armazenar numa tabela virtual

 

mais ou menos assim:

use master;set nocount oncreate table ##teste (Banco varchar(256), Tabela varchar(256))declare @name varchar(256)declare CursorTeste cursor for select name from sysdatabases				where dbid > 6 --até o 6 são os DB's do sistema (master, tempdb, model, msdb) e de exemplo (pubs, Northwind)				order by dbidopen CursorTeste -->abre o cursor "CursorTeste"FETCH NEXT FROM CursorTeste into @nameWHILE @@FETCH_STATUS = 0  -->while do cursor "CursorTeste"begin			exec ('insert into ##teste (Banco, Tabela) 		  select ''' + @Name +  ''', name from [' + @name + ']..sysobjects where type = ''U'' and name <> ''dtproperties''' )	FETCH NEXT FROM CursorTeste into @nameend  -->fim do cursor 	CLOSE CursorTeste  -->fecha o cursor "CursorTeste"DEALLOCATE CursorTeste -->mata o cursor "CursorTeste"select * from ##teste order by Banco, Tabeladrop table ##teste

falows

t+

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.