天天看点

SQL Server生成数据库字典

生成数据字典脚本

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 sys.extended_properties g on a.id = g.major_id and a.colid = g.minor_id
order by d.name, a.id, a.colorder 
           

效果(表单按照表名字排序):

SQL Server生成数据库字典

导出

选中表单,右键Save Result As,可以保存为csv文件或txt文件

SQL Server生成数据库字典