--增加字段说明
IF not exists
(SELECT * FROM ::fn_listextendedproperty (NULL, 'user', 'dbo', 'table', 'strTableName', 'column', ''strColumnName''))
BEGIN
exec sp_addextendedproperty
'MS_Description', 'strColumnDesc ', 'user', 'dbo', 'table','strTableName', 'column', 'strColumnName'
END
ELSE
BEGIN
exec sp_updateextendedproperty 'MS_Description', 'strColumnDesc ', 'user', 'dbo', 'table','strTableName', 'column', 'strColumnName'
END
--查询字段说明
select a.id,a.name,b.value
from syscolumns a left outer join sys.extended_properties b
on a.id=b.major_id and a.colid=b.minor_id
--查询字段类型
SELECT syscolumns.id,syscolumns.name,systypes.name,syscolumns.isnullable,
syscolumns.length
FROM syscolumns, systypes
WHERE syscolumns.xusertype = systypes.xusertype
--
--字段添加说明
EXEC sp_addextendedproperty 'MS_Description', '要添加的说明', 'user', dbo, 'table', 表名, 'column', 列名
--删除字段说明
EXEC sp_dropextendedproperty 'MS_Description', 'user', dbo, 'table', 表名, 'column', 字段名
--示例
--创建表
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
--删除表中列a1的描述属性:
EXEC sp_dropextendedproperty 'MS_Description','user',dbo,'table','表','column',a1
--删除测试
drop table 表