Dela via


Ändra ett index

Gäller för:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceSQL-databas i Förhandsversion av Microsoft Fabric

Det här avsnittet beskriver hur du ändrar ett index i SQL Server med hjälp av SQL Server Management Studio eller Transact-SQL.

Important

Index som skapats till följd av en PRIMÄRNYCKEL eller UNIK-begränsning kan inte ändras med hjälp av den här metoden. I stället måste villkoret ändras.

i det här avsnittet

Använda SQL Server Management Studio

Ändra ett index

  1. I Object Explorer ansluter du till en instans av SQL Server Database Engine och expanderar sedan den instansen.

  2. Expandera Databaser, expandera databasen som tabellen tillhör och expandera sedan Tabeller.

  3. Expandera tabellen där indexet tillhör och expandera sedan Index.

  4. Högerklicka på det index som du vill ändra och klicka sedan på Egenskaper.

  5. I dialogrutan Indexegenskaper gör du önskade ändringar. Du kan till exempel lägga till eller ta bort en kolumn från indexnyckeln eller ändra inställningen för ett indexalternativ.

Ändra indexkolumner

  1. Om du vill lägga till, ta bort eller ändra positionen för en indexkolumn väljer du sidan Allmänt i dialogrutan Indexegenskaper.

Using Transact-SQL

Ändra ett index

I följande exempel släpps och återskapas ett befintligt index i kolumnen ProductID i tabellen Production.WorkOrder i AdventureWorks-databasen med hjälp av alternativet DROP_EXISTING. Alternativen FILLFACTOR och PAD_INDEX anges också.

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

I följande exempel används ALTER INDEX för att ange flera alternativ för indexet AK_SalesOrderHeader_SalesOrderNumber.

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

Ändra indexkolumner

  1. Om du vill lägga till, ta bort eller ändra positionen för en indexkolumn måste du släppa och återskapa indexet.

See Also

SKAPA INDEX (Transact-SQL)
ALTER INDEX (Transact-SQL)
INDEXPROPERTY (Transact-SQL)
sys.indexes (Transact-SQL)
sys.index_columns (Transact-SQL)
Ställ in Indexalternativ
Rename Indexes