大部分网络给出的是如下方法,也是sqlserver生成代码标准写法
<pre name="code" class="sql">--添加表注释
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'<span style="color:#FF0000;">人员信息</span>' ,
@level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'<span style="color:#FF0000;">Person</span>'
GO
--更新表注释
EXEC sys.sp_updateextendedproperty @name=N'MS_Description', @value=N' 人员信息' ,
@level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N' Person'GO
--添加表字段注释
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'公司地址' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Person', @level2type=N'COLUMN',@level2name=N'company_address'
GO
--更新表字段注释
EXEC sys.sp_updateextendedproperty @name=N'MS_Description', @value=N'公司地址2' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Person', @level2type=N'COLUMN',@level2name=N'company_address'
GO
但是经测试,总是报“.系统对象不允许有扩展属性”的错误。如果有这种错误,可以在要注释的表上,利用客户端生成create语句,再执行脚本,基本上就成功了。如果感觉不爽,可以试试以下的方式,该方式比较稳定。
<pre name="code" class="sql"><pre name="code" class="sql"><pre name="code" class="sql">-增加表注释
EXECUTE sp_addextendedproperty 'MS_Description', '人员信息', 'user', 'dbo', 'table', 'Person', NULL, NULL;
<pre name="code" class="sql">-更新表注释
EXECUTE sp_updateextendedproperty 'MS_Description', '人员信息', 'user', 'dbo', 'table', 'Person', NULL, NULL;
--增加字段注释
EXEC sp_addextendedproperty 'MS_Description', ' 性别2', 'user', dbo, 'table', Person, 'column', sex; ---更新字段注释
EXEC sp_updateextendedproperty 'MS_Description', ' 性别2', 'user', dbo, 'table', Person, 'column', sex;