Ändern eines Indexes

In diesem Thema wird beschrieben, wie Sie einen Index in SQL Server 2014 mithilfe von SQL Server Management Studio oder Transact-SQL ändern.

Wichtig

Indizes, die als Ergebnis einer PRIMARY KEY- oder UNIQUE-Einschränkung erstellt wurden, können mit dieser Methode nicht geändert werden. In diesem Fall muss die Einschränkung geändert werden.

In diesem Thema

Verwendung von SQL Server Management Studio

So ändern Sie einen Index

  1. Stellen Sie im Objekt-Explorer eine Verbindung mit einer Instanz von SQL Server-Datenbank-Engine her, und erweitern Sie dann diese Instanz.

  2. Erweitern Sie Datenbankenund dann die Datenbank, zu der die Tabelle gehört, und klicken Sie anschließend auf Tabellen.

  3. Erweitern Sie die Tabelle, in die der Index gehört, und erweitern Sie dann Indizes.

  4. Klicken Sie mit der rechten Maustaste auf den Index, den Sie ändern möchten, und klicken Sie dann auf Eigenschaften.

  5. Nehmen Sie im Dialogfeld Indexeigenschaften die gewünschten Änderungen vor. Sie können z. B. eine Spalte im Indexschlüssel hinzufügen oder entfernen oder die Einstellung einer Indexoption ändern.

So ändern Sie Indexspalten

  1. Wenn Sie die Position einer Indexspalte hinzufügen, entfernen oder ändern möchten, wählen Sie im Dialogfeld Indexeigenschaften die Seite Allgemein aus.

Verwenden von Transact-SQL

So ändern Sie einen Index

  1. Stellen Sie eine Verbindung mit dem Datenbank-Engineher.

  2. Klicken Sie in der Standardleiste auf Neue Abfrage.

  3. Kopieren Sie das folgende Beispiel, fügen Sie es in das Abfragefenster ein, und klicken Sie auf Ausführen. In diesem Beispiel wird ein vorhandener Index für die ProductID -Spalte der Production.WorkOrder -Tabelle mithilfe der DROP_EXISTING -Option gelöscht und neu erstellt. Die Optionen FILLFACTOR und PAD_INDEX sind ebenfalls festgelegt.

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

    Im folgenden Beispiel werden mithilfe von ALTER INDEX mehrere Optionen für den AK_SalesOrderHeader_SalesOrderNumber-Index festgelegt.

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

So ändern Sie Indexspalten

  1. Wenn Sie die Position einer Indexspalte hinzufügen, entfernen oder ändern möchten, müssen Sie den Index löschen und neu erstellen.

Weitere Informationen

CREATE INDEX (Transact-SQL)
ALTER INDEX (Transact-SQL)
INDEXPROPERTY (Transact-SQL)
sys.indexes (Transact-SQL)
sys.index_columns (Transact-SQL)
Festlegen von Indexoptionen
Umbenennen von Indizes