【问题标题】:Use extended properties for documentation purpose?将扩展属性用于文档目的?
【发布时间】:2016-05-04 11:45:18
【问题描述】:

我打算将扩展属性用于文档。因此,要将描述和 cmets 保存到表、视图等。像这样:

EXECUTE sp_addextendedproperty 
    @name = N'MS_Description', 
    @value = N'custom description text', 
    @level0type = N'SCHEMA', @level0name = N'SchemaName', 
    @level1type = N'VIEW', @level1name = N'ViewName';

我只是想知道这是否是个好主意。这种方法是否常用,信息是否会保留在数据库中?

到目前为止,我发现信息保留在ALTER VIEW,但它在DROP VIEW上被删除。没关系。但是有没有其他可能删除信息?

【问题讨论】:

  • sp_dropextendedproperty ?
  • @Devart 是的,好吧,好吧 ;) - 我的意思是,服务器是否有可能出于某种原因自行“清理”某些属性?我知道属性存储在数据库本身的sys.sysxprops 中。我只是想确定他们会留在那里。

标签: sql-server sql-server-2008-r2 documentation extended-properties


【解决方案1】:

是的,这是一种常用的方法。是的,它将保留在数据库中。我看到的唯一真正的问题是当人们创建部署脚本或刷新环境并且他们没有编写扩展属性的脚本时。例如,如果您的部署脚本决定在每次部署时删除并重新创建存储过程。大多数脚本生成工具都支持编写扩展属性的脚本,但有一些默认禁用它。 http://www.csvreader.com/posts/data_dictionary.php

【讨论】:

  • 谢谢,很高兴听到这个消息,真的让我放心。是的,当然,属性需要在移动/部署时编写脚本。但是,扩展属性为自动化文档提供了很多很好的可能性。还要感谢您的链接,这个 csvreader 看起来是一个有趣的工具!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-04-09
  • 2012-11-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多