用SQL语句来查询表结构!

本文介绍了一种通过SQL查询自动生成.NET实体类的方法,并提供了适用于MSSQL2005以上的SQL语句,用于获取数据库表的字段信息、长度、类型及字段说明。

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

刚刚在做一个小项目,数据库中一张表有20来个字段,用我以前做的一个.NET实体类生成器一个一个的输入还是闲麻烦,于是打算找个时间来重新的改造一个那个.NET实体类,能够通过选择的数据库及用户表自动生成实体类,而且该实体类还有注释,即字段的说明字段,然后再加一个功能,生成数据库文档,其实也就是把字段字,类型,字段说明输出一个漂亮的表格而已,只要能获取出来生成HTML表格就比较容易了,上网找了一下,得到如下有用的SQL语句:

-- 查询非系统数据库
Select name FROM Master.. SysDatabases where dbid>4

-- 选择water数据库下的所有表
use [water] SELECT name FROM sysobjects WHERE xtype = 'U' Or xtype = 'S'

-- 选择water数据库下的所有用户表
use [water] SELECT name FROM sysobjects WHERE xtype = 'U' AND OBJECTPROPERTY (id, 'IsMSShipped') = 0

-- 查询water数据库下的admin表的字段名,长度,类型,字段说明
use [water] SELECT a.[name] as '字段名',a.length '长度',c.[name] '类型',e.value as '字段说明' FROM syscolumns a
left join systypes b on a.xusertype=b.xusertype
left join systypes c on a.xtype = c.xusertype
inner join sysobjects d on a.id=d.id and d.xtype='U'
left join sys.extended_properties e on a.id = e.major_id and a.colid = e.minor_id and e.name='MS_Description'
where d.name='admin'

其中sys.extended_properties系统内置视图用于存储字段说明,且只有在MSSQL2005以上才有这张表的,且前面的sys.不能去掉,SQL2000的话字段说明是存在另一个张表里的,表名忘记了,反正我不需要也懒得去查了...
特此记录!!!

经测试若要查询某张表的字段信息的话还可用如下方法:

select * from information_schema.columns where table_name ='colocal'

经测试在MSSQL 2008中测试通过
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值