随着项目的进度推进,数据库的表越来越多,字段也频繁的变更。如何对这些变更作 出文档说明,既要方便,又要有可维护性。比如,可以为所有的表创建WORD文档来说明,各个表的含义和字段的意义,但是如果数据库表或字段变更频繁的话, 更新WORD文档是个相对麻烦的工作。在博客园中曾经有技术人员专门创建文档生成工具,以程序的方式直接生成WORD文档,使为数据库创建文档的可行性提 高很多,轻松点击鼠标就可以做完的工作,非常容易。
SQL Doc
推荐给各位的数据库文档工具箱中,排名第一的是RedGate公司的SQL Doc。
创建新项目,连接数据库服务器,选择数据库,在右边的窗格中为表或它的字段创建描述信息。
使用SQL Profiler查询跟踪器,检测到它进行如下的SQL语句
1 |
|
它使用附加属性的方式,为表或字段创建备注信息,直接存放在数据库中。
回到SQL Server Management Studio中查看,看到它直接附加在字段的扩展属性中。
方便的地方不仅仅在这里,当你右键点击表,以Script Table As生成表的创建脚本时,它的最后一行,会添加属性
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
|
到目前为止,这是我发现的最优秀的数据库文档工具。新的2.1版本支持SQL Server 2008 R2。
Management Table Description
在没有找到SQL Doc之前,我一直寻找一种方法能为数据库创建文档,又便于维护。经过摸索,自己创建了如下工具,以维护数据库文档。
这个工具的原理,和上面的SQL Doc一样,也是运用扩展属性。关键部分的C#代码如下所示
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
|
tableSql 是对表进行注释,添加扩展属性,fieldSql是对字段添加扩展属性,下面的两行分别用于读取。整个工具,最关键的部分也是这里,这些是我用查询跟踪 器,跟踪出来的。尽管可以直接用SQL Server Management Studio直接完成这个工作,但是没有这个小工具直观,把这些做成工具,方便维护。
Custom Table 自定义表
这种方法比较保守,也很稳定。在数据库中专门创建数据表,来存放表及其字段的含义,再设计工具对此进行更新和维护。以金蝶系统为例子,它就是应用这个方法。
要查询表及其字段的文档信息,需要执行如下的语句
1 2 |
|
1 2 |
|
此外,金碟的辅助工具,查看表描述信息,也做的简单实用。
金碟的产品线众多,不同产品数据表的用途会有差异,比如这里的适用于服装鞋帽版。
这种方法简单直观,直接在表中存放描述信息。需要提供更新工具,读取查看工具,如果能导出成WORD/EXCEL那就更加完美了。
发表回复