温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

SQL Server中怎么为索引添加注释信息

发布时间:2021-08-13 11:16:36 来源:亿速云 阅读:164 作者:Leah 栏目:数据库

SQL Server中怎么为索引添加注释信息,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。

  如何通过扩展属性为SQLServer的索引添加注释信息

  选中一个索引:属性,扩展属性,在表格的名称,值里分别加上:"说明","这个索引的实际用处"即可。

  假如一个索引同时做了几件事,可以这样添加注释:

  (1)插入数据时,根据date+code判断指定的数据是否存在(2)后台根据date统计一段时间的汇总数据。

  这样当别人不清楚一个索引的作用时,只要看一下该索引的扩展属性即可。

  假如要查看一个数据库里的索引注释列表可以这样查询:

  selectobject_name(major_id)astable_name,(selectnamefromsys.indexeswhereobject_id=major_idandindex_id=minor_id)asindex_name,name,valuefromsys.extended_propertieswhereclass_desc='INDEX'

  在开发过程中,我们一般会在开发数据库上,指定各个索引的注释,假如要把这儿的注释同步到生产服务器,可以通过脚本来做:

  EXECsp_addextendedproperty@level0type=N'SCHEMA',@level0name=N'dbo',@level1type=N'TABLE',@level2type=N'INDEX',@level1name=N'表名',@level2name=N'索引名',@name=N'说明',@value=N'索引的实际用处'

  如何通过扩展属性为SQLServer的索引添加注释信息

  更新:sp_addextendedproperty

  删除:sp_dropextendedproperty

  调用这儿的sp_存储过程可以完成任务,但稍微有点繁琐,这时可以自己创建一个存储过程,方便给索引添加注释信息:

  -----------------------------------------------------

  --给指定表的指定索引设置扩展属性(默认的扩展属性名为:'说明'),方便为索引添加注释

  ----------------------------------------------------

  ALTERPROCEDURE[dbo].[SetIndexDesc]@tablenamenvarchar(200),@indexnamenvarchar(200),@descvaluenvarchar(500)ASBEGIN

  ---先检查索引上是否存在注释信息,假如存在,先删除

  ifexists(select*fromsys.extended_propertieswhereclass_desc='INDEX'andobject_name(major_id)=@tablenameand(selectnamefromsys.indexeswhereobject_id=major_idandindex_id=minor_id)=@indexname)beginEXECsp_dropextendedpropertyN'说明',N'SCHEMA',N'dbo',N'TABLE',@tablename,N'INDEX',@indexname;end

  ---在索引上创建注释信息

  EXECsp_addextendedproperty@level0type=N'SCHEMA',@level0name=N'dbo',@level1type=N'TABLE',@level2type=N'INDEX',@level1name=@tablename,@level2name=@indexname,@name=N'说明',@value=@descvalueEND

  调用时:

  execSetIndexDesc'表名','索引名',N'注释信息'

  假如需要把开发数据库的索引注释列表同步到生产服务器,可以这样做:

  select'execSetIndexDesc'''+object_name(major_id)+''','''+(selectnamefromsys.indexeswhereobject_id=major_idandindex_id=minor_id)+''',N'''+convert(nvarchar(500),value)+''''fromsys.extended_propertieswhereclass_desc='INDEX'andname=N'说明'

  把输出的脚本列表,在生产服务器上执行一下即可。

关于SQL Server中怎么为索引添加注释信息问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注亿速云行业资讯频道了解更多相关知识。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI