ITPub博客

首页 > Linux操作系统 > Linux操作系统 > 读取SQL Server 表结构

读取SQL Server 表结构

原创 Linux操作系统 作者:iSQlServer 时间:2009-02-25 17:07:15 0 删除 编辑
 SELECT     
  表名
=case   when   a.colorder=1   then   d.name   else   ''   end,     
  字段序号
=a.colorder,     
  字段名
=a.name,     
  标识
=case   when   COLUMNPROPERTY(   a.id,a.name,'IsIdentity')=1   then   ''else   ''   end,     
  主键
=case   when   exists(SELECT   1   FROM   sysobjects   where   xtype='PK'   and   name   in   (     
  
SELECT   name   FROM   sysindexes   WHERE   indid   in(     
  
SELECT   indid   FROM   sysindexkeys   WHERE   id   =   a.id   AND   colid=a.colid     
  )))   
then   ''   else   ''   end,     
  类型
=b.name,     
  占用字节数
=a.length,     
  长度
=COLUMNPROPERTY(a.id,a.name,'PRECISION'),     
  小数位数
=isnull(COLUMNPROPERTY(a.id,a.name,'Scale'),0),     
  允许空
=case   when   a.isnullable=1   then   ''else   ''   end,     
  默认值
=isnull(e.text,''),     
  字段说明
=isnull(g.[value],'')     
  
FROM   syscolumns   a     
  
left   join   systypes   b   on   a.xtype=b.xusertype     
  
inner   join   sysobjects   d   on   a.id=d.id   and   d.xtype='U'   and   d.name<>'dtproperties'     
  
left   join   syscomments   e   on   a.cdefault=e.id     
  
left   join   sysproperties   g   on   a.id=g.id   and   a.colid=g.smallid     
  
order   by   a.id,a.colorder 

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/16436858/viewspace-557811/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2008-10-17

  • 博文量
    1319
  • 访问量
    2101736