Sql查询架构表,得到数据字典

2015-09-11  本文已影响395人  过桥

批量修改数据类型

查询Sql Server 表、字段类型、注释等信息

示例代码

SELECT 
(case when a.colorder=1 then d.name else '' end) N'表名', 
a.colorder N'字段序号', 
a.name N'字段名', 
(case when COLUMNPROPERTY( a.id,a.name,'IsIdentity')=1 then '√' else '' 
end) N'标识', 
(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) N'主键', 
b.name N'类型', 
a.length N'占用字节数', 
COLUMNPROPERTY(a.id,a.name,'PRECISION') as N'长度', 
isnull(COLUMNPROPERTY(a.id,a.name,'Scale'),0) as N'小数位数', 
(case when a.isnullable=1 then '√'else '' end) N'允许空', 
isnull(e.text,'') N'默认值', 
isnull(g.[value],'') AS N'字段说明' 
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 sys.extended_properties g 
on a.id=g.major_id AND a.colid = g.minor_id 

/*   where d.name = 'T_Sys_ConfigField'  */

order by object_name(a.id),a.colorder
上一篇下一篇

猜你喜欢

热点阅读