如何清除sql2005中字段的字段备注信息?(downmoon)

本文介绍如何使用sp_dropextendedproperty存储过程来移除SQL Server 2005中表字段的备注信息,包括具体步骤和示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

如何清除sql2005中字段的字段备注信息?(downmoon)
比如一个表t1,
字段tIDintPrimaryInt 字段说明 '主键'
字段tNamenvarchar(100) 字段说明 '名称'
字段tTimenvarchar(100) 字段说明 '创建时间'
字段tStatenvarchar(100) 字段说明 '当前状态'

现在想清除字段的备注信息,如“主键”、“名称”、“创建时间”等

select * from sys.extended_properties
where [ name ] = ' MS_Description '


这条语句只能查看, 不能删除或更新

delete from sys.extended_properties where [ name ] = ' MS_Description '
update sys.extended_properties set [ value ] = ''   where [ name ] = ' MS_Description '


上面两句均出错! 提示:
消息 259,级别 16,状态 1,第 1 行
不允许对系统目录进行即席更新。


后来在微软网站查得结果
http://technet.microsoft.com/zh-cn/library/ms178595.aspx
示例
A.删除列上的扩展属性

以下示例从架构dbo内包含的表T1中的列id上删除属性'caption'。

CREATETABLET1(idint,namechar(20));
GO
EXECsp_addextendedproperty
@name='caption'
,@value='EmployeeID'
,@level0type='schema'
,@level0name=dbo
,@level1type='table'
,@level1name='T1'
,@level2type='column'
,@level2name=id;
GO
EXECsp_dropextendedproperty
@name='caption'
,@level0type='schema'
,@level0name=dbo
,@level1type='table'
,@level1name='T1'
,@level2type='column'
,@level2name=id;
GO
DROPTABLET1;
GO

B.删除数据库中的扩展属性

以下示例从AdventureWorks示例数据库中删除名为MS_Description的属性。由于属性位于数据库本身中,因此不指定对象类型和名称。

USEAdventureWorks;
GO
EXECsp_dropextendedproperty
@name=N'MS_Description';
GO

但以上语句无法执行,
后来用生成的sp_addextendedproperty 修改为sp_dropextendedproperty 实现

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值