2013-03-05 88 views
9

我一直在負責創建一個查詢,將返回以下數據中的所有對象:如何獲得所有擴展屬性的列表

[架構名],[對象名稱],[擴展屬性名稱] [擴展特性值]

任何想法如何實現這一點?我找到了fn_listextendedproperty函數,但這並沒有多大幫助。

回答

15

使用此查詢這列具體:

SELECT S.name as [Schema Name], O.name AS [Object Name], ep.name, ep.value AS [Extended property] 
FROM sys.extended_properties EP 
INNER JOIN sys.all_objects O ON ep.major_id = O.object_id 
INNER JOIN sys.schemas S on O.schema_id = S.schema_id 
INNER JOIN sys.columns AS c ON ep.major_id = c.object_id AND ep.minor_id = c.column_id 

使用此查詢所有擴展性質在:

SELECT S.name as [Schema Name], O.name AS [Object Name], ep.name, ep.value AS [Extended property] 
FROM sys.extended_properties EP 
LEFT JOIN sys.all_objects O ON ep.major_id = O.object_id 
LEFT JOIN sys.schemas S on O.schema_id = S.schema_id 
LEFT JOIN sys.columns AS c ON ep.major_id = c.object_id AND ep.minor_id = c.column_id 
+4

讓那些每個左連接。數據庫擴展屬性不匹配(空模式和對象名稱),並且列上的內連接會拋出所有不是列專用的擴展屬性。 – jnm2 2013-08-27 14:05:01

相關問題