2017-03-09 72 views
0

我右键单击使用Microsoft SQL Server Management Studio的索引,选择“禁用”,然后在打开的窗口中单击“确定”。窗户关闭,我看不出错误。如果我右键单击相同的索引,“禁用”选项仍然存在,而不是像我所期望的那样“启用”。MSSQL不会更改索引启用状态禁用索引

如果我右键单击索引并选择属性,我可以看到它被禁用。

我与“ALTER INDEX idx_foo ON SCHEMA.TABLE DISABLE;”有相同的结果。

另外,我认为索引列表上有一个图标(我已经扩展了数据库/表/索引)来一目了然地指示哪些被启用/禁用?

这是SQL Server 2008 R2。对于我在2008年,2012年和2016年尝试过的客户端工作室,我也尝试过针对多个数据库。

回答

0

显然这是自2005版本以来已被打破。我已在2008r2,2012,2016年进行了测试,并确认没有关于哪些索引被禁用的可视提示。

0

是的,你不能直观地看到索引是否被禁用。或者,您可以查询以检查哪些索引是禁用的。

SELECT [name] AS index_name, [is_disabled] FROM sys.indexes WHERE [is_disabled] = 1 
+0

您也无法使用GUI启用禁用的索引。闻起来很像我的一个bug。 –

+0

@DeveloperWebs您可以通过执行索引重建来启用索引。 GUI中没有启用。在GUI中,您可以单击重建。 – dco

+0

请投票支持Connect项目,以便Microsoft可以在未来的SSMS发行版中修复此错误/功能:https://connect.microsoft.com/SQLServer/Feedback/Details/3126853 – dco