我有多个应用程序使用的大型复杂 SQL Server 2005 数据库。我想创建一个数据字典,不仅可以维护我的数据库对象,还可以将它们与使用特定对象的应用程序进行交叉引用。
例如,如果一个存储过程被 15 个不同的应用程序使用,我也想记录这些附加数据。
为了获得高效且可扩展的数据字典,需要牢记哪些关键要素?
我有多个应用程序使用的大型复杂 SQL Server 2005 数据库。我想创建一个数据字典,不仅可以维护我的数据库对象,还可以将它们与使用特定对象的应用程序进行交叉引用。
例如,如果一个存储过程被 15 个不同的应用程序使用,我也想记录这些附加数据。
为了获得高效且可扩展的数据字典,需要牢记哪些关键要素?
所以,我最近帮助为一个非常大的产品构建了一个数据字典。我们正在处理使用变更请求流程记录超过一千张表格。如果您愿意,我可以向您发送我们使用的电子表格的清理版。基本上,我们捕获了以下内容:
我们还捕获了有关谁请求添加的信息、他们的联系信息等。我们的主要关注点是业务定义,并清楚地确定使用或创建列的原因。
我们的解决方案中没有存储过程,但请记住,这些很容易添加到系统中。
我们使用 Access 作为前端,尽管 SQL Server 在后端。它使我们很容易使用我们已经构建的模式构建一个丰富的用户界面而无需太多工作。
希望这可以帮助您入门 - 如果您还有其他问题,请随时询问。
我一直很喜欢在 SQL Server 中使用“扩展属性”来存储这种元数据。通过这种方式,每个对象的描述与对象一起存在,并且任何有权访问数据库本身的人都可以访问。我确信还有一些工具可以读取这些扩展属性并将它们转换为格式良好的文档。
至于“可扩展”,我不知道与添加大量数据作为扩展属性相关的任何问题;或者我应该说我从来没有遇到过任何问题。
您可以使用 SQL Server Management Studio 的“属性”对话框为每个表/proc/函数/等设置这些扩展属性,也可以使用“sp_addextendedproperty”。