怎么把数据库中含有Name属性的表全部找出来

 我来答
百度网友de7a41d
2012-11-16 · 超过43用户采纳过TA的回答
知道小有建树答主
回答量:170
采纳率:0%
帮助的人:87.3万
展开全部
SELECT SysObjects.name AS Tablename into #table FROM sysobjects WHERE xtype = 'U' --将所有表名存入临时表
declare My_cursor CURSOR For select * from #table --定义游标
declare @tablename nvarchar(30) --定义表名变量
declare @Have bit --定义开关变量
OPEN My_cursor --打开游标
FETCH NEXT FROM My_cursor InTo @tablename
while @@fetch_status=0
begin
set @Have=(select count(*) where 'Name' in (SELECT name FROM SysColumns WHERE id=Object_Id(@tablename)))
if (@Have=1)
begin
print(@tablename)
end
fetch next from My_cursor InTo @tablename
end
drop table #table
close My_cursor
deallocate My_cursor

已经在SQL server 上测试通过。
采纳后,希望加分。
给你做这个,可花了不少时间。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式