修改索引

本主题介绍如何使用 SQL Server Management Studio 或 Transact-SQL 修改 SQL Server 2014 中的索引。

重要

不能使用此方法修改由于 PRIMARY KEY 或 UNIQUE 约束而创建的索引。 相反,必须修改约束。

本主题内容

使用 SQL Server Management Studio

修改索引

  1. 在对象资源管理器中,连接到 SQL Server 数据库引擎的实例,然后展开该实例。

  2. 展开 “数据库”,展开表所属的数据库,然后展开 “表”。

  3. 展开索引所属的表,然后展开索引

  4. 右键单击要修改的索引,然后单击“ 属性”。

  5. 在“ 索引属性 ”对话框中,进行所需的更改。 例如,可以从索引键添加或删除列,或更改索引选项的设置。

修改索引列

  1. 若要添加、删除或更改索引列的位置,请从“索引属性”对话框中选择“常规”页。

使用 Transact-SQL

修改索引

  1. 连接到数据库引擎。

  2. 在标准栏中,单击“新建查询”

  3. 将以下示例复制并粘贴到查询窗口中,然后单击 执行。 此示例使用DROP_EXISTING选项在Production.WorkOrder表的ProductID列上删除并重新创建现有索引。 还设置了 FILLFACTORPAD_INDEX 选项。

    USE AdventureWorks2012;
    GO
    CREATE NONCLUSTERED INDEX IX_WorkOrder_ProductID
        ON Production.WorkOrder(ProductID)
        WITH (FILLFACTOR = 80,
            PAD_INDEX = ON,
            DROP_EXISTING = ON);
    GO
    

    以下示例使用 ALTER INDEX 设置索引 AK_SalesOrderHeader_SalesOrderNumber上的多个选项。

    USE AdventureWorks2012;
    GO
    ALTER INDEX AK_SalesOrderHeader_SalesOrderNumber ON
        Sales.SalesOrderHeader
    SET (
        STATISTICS_NORECOMPUTE = ON,
        IGNORE_DUP_KEY = ON,
        ALLOW_PAGE_LOCKS = ON
        ) ;
    GO
    

修改索引列

  1. 若要添加、删除或更改索引列的位置,必须删除并重新创建索引。

另请参阅

创建索引(Transact-SQL)
ALTER INDEX (Transact-SQL)
INDEXPROPERTY (Transact-SQL)
sys.indexes (Transact-SQL)
sys.index_columns(Transact-SQL)
设置索引选项
重命名索引