现在的位置: 首页 > 综合 > 正文

SQLServer中 如何取出一个表的所有列名

2013年08月15日 ⁄ 综合 ⁄ 共 697字 ⁄ 字号 评论关闭
 

SQLServer中 如何取出一个表的所有列名

                                      

如何取得一个数据表的所有列名
方法如下:先从SYSTEMOBJECT系统表中取得数据表的SYSTEMID,然后再SYSCOLUMN表中取得该数据表的所有列名。
SQL语句如下:
declare @objid int,@objname char(40)
set @objname = 'tablename'
select @objid = id from sysobjects where id = object_id(@objname)
select 'Column_name' = name from syscolumns where id = @objid order by colid

[From]
http://www.csdn.com.cn/program/4354.htm
SQLServer中 如何取出一个表的所有列名

[练习]
除表的列名,还列出该列的类型及长度(本例为最多4位):

declare @objid int,@objname char(40)
set @objname = 'tablename'
select @objid = id from sysobjects where id = object_id(@objname)
select 'Column_name' = tsc.name, 'Colume_type' = tst.name + '(' + convert(char(4),tst.length) + ')'
from syscolumns tsc, systypes tst
where id = @objid AND tsc.xtype = tst.xtype
order by colid

抱歉!评论已关闭.