在SQL Server 中有多个的相同结构的数据库,
其中 有一表 (此表只有一条记录)
Table Account
ID int
Name varchar
Memo varchar
现在想要查询的结果 :
存在 Table Account 的数据库名,以及 Table Account 的 Name
求 sql or 存储过程
其中 有一表 (此表只有一条记录)
Table Account
ID int
Name varchar
Memo varchar
现在想要查询的结果 :
存在 Table Account 的数据库名,以及 Table Account 的 Name
求 sql or 存储过程
没有指定数据库名??
应该知道Server的名称吧,否则真不知道在那里寻找了?
没有指定数据库名??
应该知道Server的名称吧,否则真不知道在那里寻找了?
---------------------------------------------------
可能是我表达的不好,您没有明白我的意思
是这样的
外面程序先连到Server后, 连接master
select name from sysdatabase
这样就可以得到服务器里所在有数据库
然后再一一检查数据中有没有存在Table Account
如果有 select name from Accout这样 DBName, Account.Name 构成一条记录
要的是所有的记录求 SQL
from syscolumns s1,sysobjects o
where s1.id=0.id
and o.type='u'
and exists(select 1 from syscolumns s2 where s1.name=s2.name and s1.id<>s2.id)
from syscolumns s1,sysobjects o
where s1.id=o.id
and o.type='u'
and exists(select 1 from syscolumns s2 where s1.name=s2.name and s1.id<>s2.id)
腰缠70元到月入近10万
http://www.hunbei.com.cn/Article/ArticleShow.asp?ArticleID=453IT工程师 毕业4年我年薪涨到30万
http://www.hunbei.com.cn/Article/ArticleShow.asp?ArticleID=51126岁青年坐拥千万域名资产 从小玩家变成CEO
http://www.hunbei.com.cn/Article/ArticleShow.asp?ArticleID=515程序员的酸甜苦辣:告别Coding
http://www.hunbei.com.cn/Article/ArticleShow.asp?ArticleID=341从月薪3500到700万(一)
http://www.hunbei.com.cn/Article/ArticleShow.asp?ArticleID=170网络草根月赚3000的十种方法
http://www.hunbei.com.cn/Article/ArticleShow.asp?ArticleID=517如果我是女的 我肯定不会嫁给做网站的
http://www.hunbei.com.cn/Article/ArticleShow.asp?ArticleID=512
腰缠70元到月入近10万
http://www.hunbei.com.cn/Article/ArticleShow.asp?ArticleID=453IT工程师 毕业4年我年薪涨到30万
http://www.hunbei.com.cn/Article/ArticleShow.asp?ArticleID=51126岁青年坐拥千万域名资产 从小玩家变成CEO
http://www.hunbei.com.cn/Article/ArticleShow.asp?ArticleID=515程序员的酸甜苦辣:告别Coding
http://www.hunbei.com.cn/Article/ArticleShow.asp?ArticleID=341从月薪3500到700万(一)
http://www.hunbei.com.cn/Article/ArticleShow.asp?ArticleID=170网络草根月赚3000的十种方法
http://www.hunbei.com.cn/Article/ArticleShow.asp?ArticleID=517如果我是女的 我肯定不会嫁给做网站的
http://www.hunbei.com.cn/Article/ArticleShow.asp?ArticleID=512
set @sql=''
select @sql=@sql+'if exists (select 1 from ['+name+'].dbo.sysobjects where type=''u'' and name=''Account'')
select '''+name+''' as dbname,name from ['+name+'].dbo.Account ' from sysdatabasesexec(@sql)
declare @name varchar(30)
declare c1 cursor for
select [name] from sysdatabases order by [name]
open c1
fetch next from c1 into @name
while @@fetch_status=0
begin
declare @sql varchar(8000)
set @sql='if exists(select 1 from '+@name+'.dbo.sysobjects where [name]=''Account'' and type=''u'') select [name] from '+@name+'.dbo.Account'
exec(@sql)
fetch next from c1 into @name
end
close c1
deallocate c1
set @sql='if exists(select 1 from '+@name+'.dbo.sysobjects where [name]=''Account'' and type=''u'') select '''+@name+''',[name] from '+@name+'.dbo.Account'
declare @sql varchar(8000)
set @sql =''declare c1 cursor for
select [name] from MASTER..sysdatabases order by [name]
open c1
fetch next from c1 into @name
while @@fetch_status=0
begin
set @sql=@sql + 'select '''+@name+''' from '+@name+'.dbo.sysobjects where [name]=''Account'' and type=''u'' union '
fetch next from c1 into @name
end
close c1
deallocate c1set @sql = left(@sql,len(@sql)-6)
print @sql
exec(@sql)