sql 查找表中定义的列宽

方法一:(推荐使用:可以查出字段的宽度,但不好之处如果类型为 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,

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值