SQL Server元数据:如何获取视图中列的描述

时间:2011-07-05 11:07:33

标签: sql-server metadata database-schema

SQL Server允许存储表格及其列的描述等元数据。可以从sys.extended_properties中检索列的说明。还有一种方法可以为视图设置描述(使用属性窗口)。但是没有办法(至少我现在不知道)将一个列的描述放在一个视图中。

对于特定的开发,我们将描述保留在数据库本身中。这使我们可以将它保存在一个地方并对其进行报告。

我们希望扩展相同的内容以包括观点。

有人可以帮忙吗?

3 个答案:

答案 0 :(得分:1)

当然,SQL Server支持存储并根据columns of a view检索元数据值,但我认为Management Studio不支持类似于它的属性窗口。

您可以使用sp_addextendedproperty及其相关功能来维护说明等,例如:

EXEC sp_addextendedproperty 
@name = N'Description', 
@value = 'Postal Code lorem ipsum...',
@level0type = N'Schema', @level0name = 'dbo',
@level1type = N'View',  @level1name = 'MyView',
@level2type = N'Column', @level2name = 'PostCodeColumn';

答案 1 :(得分:1)

使用SSMS 2008可以正常工作。使用对象资源管理器并在视图中选择列的属性。

它不适用于SSMS 2005.您将获得例外Alter failed for Column 'ColumnName'. View columns cannot be modified or created. (Microsoft.SqlServer.Smo)

但您可以使用SSMS 2008将元数据添加到SQL Server 2005数据库。

答案 2 :(得分:0)

可以有旁路解决方案。为每个视图创建一个表,从那里它将与您正在做的事情相同。比方说,你有一个VIEW_TEMP的视图,然后写:

SELECT * INTO TABLE_FOR_VIEW_TEMP FROM VIEW_TEMP

将创建一个表格,您可以使用您的文档。