执行下面的T-SQL来禁用AdventureWorks数据库中的Person.Address 表的IX_Address_StateProvinceID索引。 探究SQL Server 2008的过滤索引
USE AdventureWorks
GO
ALTER INDEX IX_Address_StateProvinceID ON Person.Address DISABLE
GO
-- Query to check Index Usage
SELECT NAME AS [IndexName], TYPE_DESC AS [IndexType],
CASE IS_DISABLED
WHEN 0 THEN 'Enabled'
ELSE 'Disabled'
END AS [IndexUsage],
FILL_FACTOR AS [FillFactor] FROM SYS.INDEXES
WHERE OBJECT_ID = OBJECT_ID('Person.Address') ORDER BY IndexName, IndexUsage
GO
2、 通过SMSS禁用索引
打开AdventureWorks表的对象浏览器,直到你打开到Person.Address,接着打开索引,然后右键单击IX_Address_StateProvinceID(非唯一,非群集)并且从下拉菜单中选择禁用。这时将打开禁用索引对话框,点击OK就可以禁用索引。

你也可以像下面截图中那样,通过不勾选使用索引选项来禁用一个索引,这个选项在索引属性对话框的选项页面中。

2、 通过SMSS禁用索引
打开AdventureWorks表的对象浏览器,直到你打开到Person.Address,接着打开索引,然后右键单击IX_Address_StateProvinceID(非唯一,非群集)并且从下拉菜单中选择禁用。这时将打开禁用索引对话框,点击OK就可以禁用索引。

你也可以像下面截图中那样,通过不勾选使用索引选项来禁用一个索引,这个选项在索引属性对话框的选项页面中。

启用索引
你可以通过不同的方式启用索引。现在让我们逐个进行介绍。
1、 通过ALTER INDEX REBUILD语句启用索引
| USE AdventureWorks
GO
ALTER INDEX IX_Address_StateProvinceID ON Person.Address REBUILD
GO
|
2、 通过CREATE INDEX WITH DROP_EXISTING语句启用索引
| USE AdventureWorks
GO
CREATE NONCLUSTERED INDEX [IX_Address_StateProvinceID] ON [Person].[Address]
(
[StateProvinceID] ASC
)WITH (DROP_EXISTING = ON, FILLFACTOR = 80) ON [PRIMARY]
GO
|
3、 通过SSMS启用索引
打开AdventureWorks表的对象浏览器,直到你打开到Person.Address,接着打开索引,然后右键单击IX_Address_StateProvinceID(非唯一,非群集)并且从下拉菜单中选择重新建立。这时将打开重新建立索引对话框,点击OK就可以 启用索引。

你也可以像下面截图中那样,通过选择使用索引选项来启用一个索引,这个选项在索引属性对话框的选项页面中。
