SqlServer協助中對擴充屬性的描述是:
The Extended Properties property sets or retrieves provider-specific connection information that cannot be explicitly described through the property mechanism.
對於擴充屬性有如下操作:
複製代碼 代碼如下:
exec sp_addextendedproperty N'MS_Description', N'欄位描述', N'user', N'dbo',
N'table', N'表名', N'column', N'欄位名'
GO
例如:EXEC sp_addextendedproperty N'MS_Description',N'地址',N'user', dbo,N'table',
複製代碼 代碼如下:
N'a', N'column', a_add
GO--我的表是a,要給欄位a_add加上欄位描述:地址
其他相關:
刪除:
複製代碼 代碼如下:
EXEC sp_dropextendedproperty N'MS_Description',N'user', dbo,N'table', N'表名',
N'column', 欄位名
修改:
複製代碼 代碼如下:
EXEC sp_updateextendedproperty N'MS_Description', N'欄位描述', N'user',
dbo,N'table',N'表名', 'column', 欄位
至於查詢出來,sql server有提供系統函數fn_listextendedproperty ():
複製代碼 代碼如下:
--擷取某一個欄位的描述
SELECT *
FROM ::fn_listextendedproperty (NULL, 'user', 'dbo', 'table', '表名', 'column',
default)--其他變數,按照你的要求你照寫即可,只要表名換成你的
where objname = '欄位名'
另外也可以自己查詢系統資料表:
複製代碼 代碼如下:
SELECT o.name AS tableName, c.name AS columnName, p.[value] AS Description
FROM sysproperties p INNER JOIN
sysobjects o ON o.id = p.id INNER JOIN
syscolumns c ON p.id = c.id AND p.smallid = c.colid
WHERE (p.name = 'MS_Description')
ORDER BY o.name