当前位置:数据库 > SQLServer >>

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

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

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)

上一个:直接从SQL语句问题贴子数据建表并生成建表语句的存储过程
下一个:比较两个数据库的表结构差异

Oracle
MySQL
Access
SQLServer
DB2
Excel
SQLite
SYBASE
Postgres
如果你遇到数据库难题:
请访问www.zzzyk.com 试试
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,