启用索引和约束指南
索引被禁用后一直保持禁用状态,直到它重新生成或删除。您可以使用下列方法之一,重新生成禁用的索引来启用它:
带 REBUILD 子句的 ALTER INDEX 语句
带 DROP_EXISTING 子句的 CREATE INDEX
DBCC DBREINDEX
您可以使用下列语句之一,重新生成索引,并将其状态设为启用。
 注意 | 
|---|
当 ONLINE 选项设置为 ON 时,不能重新生成禁用的聚集索引。  | 
在索引重新生成之后,任何因禁用索引而被禁用的约束必须手动将其启用。PRIMARY KEY 和 UNIQUE 约束可通过重新生成相关联的索引来启用。您必须重新生成(启用)索引才能启用引用 PRIMARY KEY 或 UNIQUE 约束的 FOREIGN KEY 约束。FOREIGN KEY 约束可使用 ALTER TABLE CHECK CONSTRAINT 语句来启用。
禁用的聚集索引如何影响非聚集索引
重新生成或删除禁用的聚集索引对非聚集索引的影响,取决于这两种索引类型的状态是禁用的还是启用的。下表概括了这些影响。
当禁用或启用聚集索引,禁用非聚集索引时,对聚集索引操作会对禁用的非聚集索引有如下影响。
当聚集索引操作为  | 
禁用的非聚集索引  | 
|---|---|
ALTER INDEX REBUILD。  | 
保持禁用状态。  | 
ALTER INDEX ALL REBUILD。  | 
重新生成或启用。  | 
DROP INDEX。  | 
保持禁用状态。  | 
CREATE INDEX WITH DROP_EXISTING。  | 
保持禁用状态。  | 
与聚集索引相关联的非聚集索引允许的操作,取决于这两种索引类型的状态是禁用还是启用。下表概括了非聚集索引允许的操作。
当非聚集索引操作为  | 
且聚集和非聚集索引被禁用。  | 
或聚集索引被启用而非聚集索引被禁用或启用。  | 
|---|---|---|
ALTER INDEX REBUILD。  | 
操作失败。  | 
操作成功。  | 
DROP INDEX。  | 
操作成功。  | 
操作成功。  | 
CREATE INDEX WITH DROP_EXISTING。  | 
操作失败。  | 
操作成功。  | 
注意