如何导出SQL所有用户表的字段信息
来源:优易学  2011-3-16 9:44:27   【优易学:中国教育考试门户网】   资料下载   IT书店
问题:怎样才能导出SQL所有用户表的字段信息?
  解答:请使用下面的Sql语句:
  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 (SELECT count(*)
  FROM sysobjects
  WHERE (name in
  (SELECT name
  FROM sysindexes
  WHERE (id = a.id) AND (indid in
  (SELECT indid
  FROM sysindexkeys
  WHERE (id = a.id) AND (colid in
  (SELECT colid
  FROM syscolumns
  WHERE (id = a.id) AND (name = a.name))))))) AND
  (xtype = 'PK'))>0 then '√' else '' end) 主键,
  b.name 类型,
  a.length 占用字节数,
  COLUMNPROPERTY(a.id,a.name,'PRECISION') as 长度,
  isnull(COLUMNPROPERTY(a.id,a.name,'Scale'),0) as 小数位数,
  (case when a.isnullable=1 then '√'else '' end) 允许空,
  isnull(e.text,'') 默认值,
  isnull(g.[value],'') AS 字段说明
  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

责任编辑:小草

文章搜索:
 相关文章
热点资讯
热门课程培训