查询所有数据库中的所有表的所有字段的信息

本文介绍如何使用SQL查询语句遍历数据库中的所有表,并获取每个表的所有字段信息。这对于数据库管理和数据迁移等任务非常有用。详细步骤和示例代码将帮助你轻松完成这项工作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 

/*查询所有数据库中的所有表的所有字段的信息*/

/*
标题:查询所有数据库中的所有表的所有字段的信息(version 0.9)
作者:InternetRoot 网络根结 
时间:2008-03-21
地点:江苏南通
说明:通过赋值语句批量生成查找单个数据库中表信息的查询语句,然后用UNION将多查询并接。version 0.9可在sql server 2000和sql server 2005中运行。
*/
declare 
@s varchar(
8000)

set @s=''
select @s
=' '+@s+
(  select 
'select '''+name+''' as dbname,a.name as tablename,b.name as colname,c.name as coltype,c.length as coltype from ['+
        name
+']..sysobjects a inner join ['+
        name
+']..syscolumns b on a.id=b.id inner join ['+
        name
+']..systypes c on b.type=b.type where a.type=''U''and c.xtype <>''36''' 
        
as sql 
   from master..sysdatabases 
as s where s.name=d.name)+' union '
from master..sysdatabases 
as d

set @s=left(@s,len(@s)-6)

execute(@s)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值