4

我想更改sp_helpindex系统程序,或者用我的版本替换它。

原因是:

  • 显示 index_id
  • 显示包含的列
  • 显示过滤器定义
  • 显示填充因子
  • 显示索引大小
  • 也显示堆信息

此外,有趣的是,我的版本表现得更好(更快、更少读取、无光标)。

我尝试了以下方法,但这些都不起作用:

  • sp_rename
  • 变更程序
  • 丢弃程序

错误Invalid object name 'sys.sp_helpindex'.

我现在能想到的唯一选择就是添加一个新程序而不是替换现有程序。但是,有一个缺点。我希望sp_help(反过来调用sp_helpindex)能够无缝地接收我的更改,因此在服务器上使用 Alt+F1 的每个人都会看到更改,而无需更改每个客户端上的默认 SSMS 快捷键。

4

1 回答 1

7

不,您不能修改任何系统过程。您可以创建自己的并调用它;您只需给它一个不同的sp_名称,将其标记为系统对象,而不是将其放入sys架构中。

哦,Kimberly Tripp 并没有从头开始创建自己的版本,而是不断发展自己的版本,更新了新功能,当然你应该抓住Kendra Little 的 sp_BlitzIndex。你可能会发现你不需要写任何东西,因为很多其他人已经重新发明了那个轮子,并且做得很好。

于 2013-10-25T21:05:05.007 回答