--參考下,2005下沒測試
--表及字段描述信息处理示例
--创建表
create table 表(a1 varchar(10),a2 char(2))
--为表添加描述信息
EXECUTE sp_addextendedproperty N'MS_Description', '人员信息表', N'user', N'dbo', N'table', N'表', NULL, NULL
--为字段a1添加描述信息
EXECUTE sp_addextendedproperty N'MS_Description', '姓名', N'user', N'dbo', N'table', N'表', N'column', N'a1'
--为字段a2添加描述信息
EXECUTE sp_addextendedproperty N'MS_Description', '性别', N'user', N'dbo', N'table', N'表', N'column', N'a2'
--更新表中列a1的描述属性:
EXEC sp_updateextendedproperty 'MS_Description','字段1','user',dbo,'table','表','column',a1
--显示表的描述属性
SELECT *
FROM ::fn_listextendedproperty (NULL, 'user', 'dbo', 'table', '表', 'column', NULL)
--删除表中列a1的描述属性:
EXEC sp_dropextendedproperty 'MS_Description','user',dbo,'table','表','column',a1
--删除测试
drop table 表
可以通过以下语句获得所有描述信息:
--------------------------------------------------
SELECT t.name AS [表名]
,c.name AS [字段名]
,ep.value AS [字段说明]
FROM sys.tables AS t
INNER JOIN sys.columns AS c
ON t.object_id = c.object_id
LEFT JOIN sys.extended_properties AS ep
ON ep.major_id = c.object_id AND ep.minor_id = c.column_id
WHERE ep.class = 1 --条件省略可以查看全部字段说明,否则只显示有说明的字段
--AND t.name='表名' --省略这个条件可以显示全表