SqlServer20082005生成数据字典的方法

SqlServer20082005生成数据字典的方法,第1张

概述   今天在写需求分析文档的过程中,其中一项是数据字典,由于对数据字典不是很了解,就在网上查了一下    中文名称:数据字典    英文名称:data dictionary    定义:数据库中所有对象及其关系的信息集合。    应用学科:地理学(一级学科);地理信息系统(二级学科)    详细介绍可以看百科中的介绍   :http://baike.baidu.com/view/70173.htm

   今天在写需求分析文档的过程中,其中一项是数据字典,由于对数据字典不是很了解,就在网上查了一下

   中文名称:数据字典

   英文名称:data dictionary

   定义:数据库中所有对象及其关系的信息集合。

   应用学科:地理学(一级学科);地理信息系统(二级学科)

   详细介绍可以看百科中的介绍   :http://baike.baidu.com/view/70173.htm

   我需要写数据字典,于是又查了一下,数据字典该怎么写? 写出来的模式是什么样的?  大概截了一个图如下:

将数据字典写成这个样子就可以了,我快速的就创建了一个Excel ,想照着数据库自己写吧,着手的时候感觉很麻烦,那么多字段,应该还会有其他办法吧,例如用sql直接生成。  百度上移搜索,还真有这样的方法。下面就是我利用sql2008生成数据字典的全过程 :

    我自己对数据字典的理解,似乎就像我们平时用的字典一样吧,例如汉语字典,成语字典,英语字典等等,我们想要知道什么就去字典里 查。而数据字典也是这样,我要知道某个数据库中都包含哪些表啊,这些表中都包含什么字段啊,字段的属性,以及一些信息都可以通过数据字典查到。通过查找了一些资料,现将生成数据字典的步骤总结如下(在此以数据库中的系统数据流master为例子来生成数据字典):

 

1.首先,要确定你所查找的数据库是哪个,我就以系统数据库为例了


右击数据库(此处为你想生成数据字典的数据库名称),然后在d出菜单中选择新建查询 

 2.其次,将生成数据字典的语句写在新建查询中,这些查询的sql语句用sql20052008都可以使用,无需改动什么,只需要直接将这些代码敲好了就可以 

语句如下: 

SELECT 表名=case when a.colorder=1 then d.name else '' end,表说明=case when a.colorder=1 then isnull(f.value,'') 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,'PRECISION'),小数位数=isnull(ColUMNPROPERTY(a.ID,'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 sys.extended_propertIEsg on a.ID=g.major_ID and a.colID=g.minor_ID left join sys.extended_propertIEsf on d.ID=f.major_ID and f.minor_ID =0 --where d.name='要查询的表' --如果只查询指定表,加上此条件 order by a.ID,a.colorder 


 

3.这些语句完成后,执行这些语句就可以查到相应的数据字典了例如

 



通过一些SQL语句,把我以为很繁琐的工作,这么接单的就解决了,感觉不错,因此也来分享一下。(遗憾的是这些SQL语句是我查找出来的,而不是自己写出来的,知识无穷,需要学的还真多! 争取自己写出来!)

总结

以上是内存溢出为你收集整理的SqlServer2008/2005生成数据字典的方法全部内容,希望文章能够帮你解决SqlServer2008/2005生成数据字典的方法所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/1174079.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-02
下一篇 2022-06-02

发表评论

登录后才能评论

评论列表(0条)

保存