修改索引
適用於:SQL Server、Azure SQL 資料庫 和 Azure SQL 受控執行個體。
此主題說明如何使用 SQL Server Management Studio 或 Transact-SQL,在 SQL Server 中修改索引。
重要
因 PRIMARY KEY 或 UNIQUE 條件約束而建立的索引將無法使用此方法來修改。 必須修改條件約束。
本主題內容
若要修改索引,使用:
使用 SQL Server Management Studio
若要修改索引
在 [物件總管] 中,連接到 SQL Server Database Engine 的執行個體,然後展開該執行個體。
展開 [資料庫],展開資料表所在的資料庫,然後展開 [資料表]。
展開索引所在的資料表,然後展開 [索引]。
以滑鼠右鍵按一下您要修改的索引,然後按一下 [屬性]。
在 [索引屬性] 對話方塊中,進行所需的變更。 例如,您可以在索引鍵中加入或移除資料行,或是變更索引選項的設定。
若要修改索引資料行
- 若要加入、移除或變更索引資料行的位置,請選取 [索引屬性] 對話方塊中的 [一般] 頁面。
使用 TRANSACT-SQL
若要修改索引
下列範例會利用 ProductID
選項,在 AdventureWorks 資料庫中 Production.WorkOrder
資料表的 DROP_EXISTING
資料行上卸除並重新建立現有的索引。 也會設定 FILLFACTOR
和 PAD_INDEX
選項。
CREATE NONCLUSTERED INDEX IX_WorkOrder_ProductID
ON Production.WorkOrder(ProductID)
WITH (FILLFACTOR = 80,
PAD_INDEX = ON,
DROP_EXISTING = ON)
;
下列範例會使用 ALTER INDEX 設定 AK_SalesOrderHeader_SalesOrderNumber
索引的幾個選項。
ALTER INDEX AK_SalesOrderHeader_SalesOrderNumber ON
Sales.SalesOrderHeader
SET (
STATISTICS_NORECOMPUTE = ON,
IGNORE_DUP_KEY = ON,
ALLOW_PAGE_LOCKS = ON
)
;
若要修改索引資料行
- 若要加入、移除或變更索引資料行的位置,您必須卸除索引,再重新建立該索引。
另請參閱
CREATE INDEX (Transact-SQL)
ALTER INDEX (Transact-SQL)
INDEXPROPERTY (Transact-SQL)
sys.indexes (Transact-SQL)
sys.index_columns (Transact-SQL)
設定索引選項
重新命名索引