--查询指定的表在那些数据库中存在

declare @tbname sysname

set @tbname='客户资料'

declare @dbname sysname,@sql nvarchar(4000),@re bit,@sql1 varchar(8000)

set @sql1=''

declare tb cursor for select name from master..sysdatabases

open tb

fetch next from tb into @dbname

while @@fetch_status=0

begin

 set @sql='set @re=case when exists(select 1 from ['

  +@dbname+']..sysobjects where xtype=''U'' and name='''

  +@tbname+''') then 1 else 0 end'

 exec sp_executesql @sql,N'@re bit out',@re out

 if @re=1 set @sql1=@sql1+' union all select '''+@dbname+''''

 fetch next from tb into @dbname

end

close tb

deallocate tb

set @sql1=substring(@sql1,12,8000)

exec(@sql1)