方法一:(推荐使用:可以查出字段的宽度,但不好之处如果类型为 nvarchar 的时候 你就需要除以2 带N的代表是双字节)
select a.name --字段名
,c.name --数据类型
,c.length --数据类型的长度
,a.length --表中定义时所使用的长度
from syscolumns a,
sysobjects b,
systypes c
where a.id=b.id and a.xtype=c.xtype
and b.name='pinpai' and c.name<>'sysname'
方法二:(推荐使用:此种方法不能查出基本类型的宽度 例 int ,datetime 结果为 null)
select
Column_name, data_type,character_maximum_length,character_octet_length
from INFORMATION_SCHEMA.COLUMNS where table_name='you tablename'
方法三:(也可以使用的)
(网友:331388002 提供)
select a.name as 'name',b.name as 'type'
from syscolumns a ,systypes b
where a.xtype =b.xtype and a.id=object_id('blog') and b.name!='sysname'
另外一点补充说明:
还有如果在定义的时候用 max 的话 那么取出的是-1,