Algumas ferramentas para banco de dados possuem uma busca para objetos(tabelas, triggers, views, etc) no banco de dados, para o caso de não ter disponível ou como no meu caso, de precisar fazer de forma dinâmica dentro de uma aplicação, pode-se utilizar o código abaixo:
declare @table table(database_name varchar(80),
database_size int, remarks varchar(100))
insert into @table exec sp_databases
create table #database (database_name varchar(80))
declare _database cursor for Select * from @table
declare @database varchar(100)
declare @database_size int
declare @remarks varchar(100)
open _database
fetch _database into @database , @database_size , @remarks
declare @sql varchar(2000)
while @@fetch_status = 0
begin
set @sql = 'use ' + @database + ' if exists (Select top 1 1 from '
set @sql = @sql + ' sysobjects where name = ''fn_media'') insert '
set @sql = @sql + ' into #database select ''' + @database + ''''
exec( @sql )
fetch _database into @database , @database_size , @remarks
end
close _database
deallocate _database
Select * from #database order by database_name
drop table #database