Festlegen von IndexoptionenSet Index Options

Anwendungsbereich:Applies to: JaSQL ServerSQL Server (alle unterstützten Versionen) yesSQL ServerSQL Server (all supported versions) JaAzure SQL-DatenbankAzure SQL DatabaseYesAzure SQL-DatenbankAzure SQL DatabaseAnwendungsbereich:Applies to: JaSQL ServerSQL Server (alle unterstützten Versionen) yesSQL ServerSQL Server (all supported versions) JaAzure SQL-DatenbankAzure SQL DatabaseYesAzure SQL-DatenbankAzure SQL Database

In diesem Thema wird beschrieben, wie die Eigenschaften eines Indexes in SQL Server 2019 (15.x)SQL Server 2019 (15.x) mit SQL Server Management StudioSQL Server Management Studio oder Transact-SQLTransact-SQLgeändert werden.This topic describes how to modify the properties of an index in SQL Server 2019 (15.x)SQL Server 2019 (15.x) by using SQL Server Management StudioSQL Server Management Studio or Transact-SQLTransact-SQL.

In diesem ArtikelIn This Article

VorbereitungenBefore You Begin

EinschränkungenLimitations and Restrictions

  • Die folgenden Optionen werden sofort auf den Index angewendet, indem die SET-Klausel in der ALTER INDEX-Anweisung verwendet wird: ALLOW_PAGE_LOCKS, ALLOW_ROW_LOCKS, OPTIMIZE_FOR_SEQUENTIAL_KEY, IGNORE_DUP_KEY und STATISTICS_NORECOMPUTE.The following options are immediately applied to the index by using the SET clause in the ALTER INDEX statement: ALLOW_PAGE_LOCKS, ALLOW_ROW_LOCKS, OPTIMIZE_FOR_SEQUENTIAL_KEY, IGNORE_DUP_KEY, and STATISTICS_NORECOMPUTE.
  • Die folgenden Optionen können festgelegt werden, wenn Sie mit ALTER INDEX REBUILD oder CREATE INDEX WITH DROP_EXISTING einen Index neu erstellen: PAD_INDEX, FILLFACTOR, SORT_IN_TEMPDB, IGNORE_DUP_KEY, STATISTICS_NORECOMPUTE, ONLINE, ALLOW_ROW_LOCKS, ALLOW_PAGE_LOCKS, MAXDOP und DROP_EXISTING (nur CREATE INDEX).The following options can be set when you rebuild an index by using either ALTER INDEX REBUILD or CREATE INDEX WITH DROP_EXISTING: PAD_INDEX, FILLFACTOR, SORT_IN_TEMPDB, IGNORE_DUP_KEY, STATISTICS_NORECOMPUTE, ONLINE, ALLOW_ROW_LOCKS, ALLOW_PAGE_LOCKS, MAXDOP, and DROP_EXISTING (CREATE INDEX only).

SicherheitSecurity

BerechtigungenPermissions

Erfordert die ALTER-Berechtigung in der Tabelle oder Sicht.Requires ALTER permission on the table or view.

Verwenden von SQL Server Management StudioUsing SQL Server Management Studio

So ändern Sie die Eigenschaften eines Indexes im Tabellen-DesignerTo modify the properties of an index in Table Designer

  1. Klicken Sie im Objekt-Explorer auf das Pluszeichen, um die Datenbank mit der Tabelle zu erweitern, in der Sie die Eigenschaften eines Indexes ändern möchten.In Object Explorer, click the plus sign to expand the database that contains the table on which you want to modify an index's properties.
  2. Klicken Sie auf das Pluszeichen, um den Ordner Tabellen zu erweitern.Click the plus sign to expand the Tables folder.
  3. Klicken Sie mit der rechten Maustaste auf die Tabelle, in der Sie die Eigenschaften eines Indexes ändern möchten, und wählen Sie Entwurf aus.Right-click the table on which you want to modify an index's properties and select Design.
  4. Klicken Sie im Menü Tabellen-Designer auf Indizes/Schlüssel.On the Table Designer menu, click Indexes/Keys.
  5. Wählen Sie den Index aus, den Sie ändern möchten.Select the index that you want to modify. Seine Eigenschaften werden im Hauptraster angezeigt.Its properties will show up in the main grid.
  6. Ändern Sie die Einstellungen beliebiger oder aller Eigenschaften, um den Index anzupassen.Change the settings of any and all properties to customize the index.
  7. Klicken Sie auf Schließen.Click Close.
  8. Klicken Sie im Menü Datei auf SaveTabellenname.On the File menu, select Savetable_name.

So ändern Sie die Eigenschaften eines Indexes in Objekt-ExplorerTo modify the properties of an index in Object Explorer

  1. Klicken Sie im Objekt-Explorer auf das Pluszeichen, um die Datenbank mit der Tabelle zu erweitern, in der Sie die Eigenschaften eines Indexes ändern möchten.In Object Explorer, click the plus sign to expand the database that contains the table on which you want to modify an index's properties.
  2. Klicken Sie auf das Pluszeichen, um den Ordner Tabellen zu erweitern.Click the plus sign to expand the Tables folder.
  3. Klicken Sie auf das Pluszeichen, um die Tabelle zu erweitern, in der Sie die Eigenschaften eines Indexes ändern möchten.Click the plus sign to expand the table on which you want to modify an index's properties.
  4. Klicken Sie auf das Pluszeichen, um den Ordner Indizes zu erweitern.Click the plus sign to expand the Indexes folder.
  5. Klicken Sie mit der rechten Maustaste auf den Index, dessen Eigenschaften Sie ändern möchten, und wählen Sie Eigenschaftenaus.Right-click the index of which you want to modify the properties and select Properties.
  6. Wählen Sie unter Seite auswählendie Option Optionenaus.Under Select a page, select Options.
  7. Ändern Sie die Einstellungen beliebiger oder aller Eigenschaften, um den Index anzupassen.Change the settings of any and all properties to customize the index.
  8. Zum Hinzufügen, Entfernen oder Ändern der Position einer Indexspalte wählen Sie auf der Seite Allgemein im Dialogfeld Index Properties – Indexname (Indexeigenschaften – Indexname) aus.To add, remove, or change the position of an index column, select the General page from the Index Properties - index_name dialog box. Weitere Informationen finden Sie unter Index Properties F1 Help.For more information, see Index Properties F1 Help

Verwenden von Transact-SQLUsing Transact-SQL

So sehen Sie die Eigenschaften aller Indizes in einer TabelleTo see the properties of all the indexes in a table

Das folgende Beispiel zeigt die Eigenschaften aller Indizes in einer Tabelle in der AdventureWorks-Datenbank.The following example shows the properties of all indexes in a table in the AdventureWorks database.

SELECT i.name AS index_name
   , i.type_desc
   , i.is_unique
   , ds.type_desc AS filegroup_or_partition_scheme
   , ds.name AS filegroup_or_partition_scheme_name
   , i.ignore_dup_key
   , i.is_primary_key
   , i.is_unique_constraint
   , i.fill_factor
   , i.is_padded
   , i.is_disabled
   , i.allow_row_locks
   , i.allow_page_locks
   , i.has_filter
   , i.filter_definition
FROM sys.indexes AS i
   INNER JOIN sys.data_spaces AS ds
      ON i.data_space_id = ds.data_space_id
   WHERE is_hypothetical = 0 AND i.index_id <> 0
       AND i.object_id = OBJECT_ID('HumanResources.Employee')
;

So stellen Sie die Eigenschaften eines Indexes einTo set the properties of an index

Das folgende Beispiel legt die Eigenschaften von Indizes in der AdventureWorks-Datenbank fest.The following examples set the properties of indexes in the AdventureWorks database.

ALTER INDEX AK_SalesOrderHeader_SalesOrderNumber ON
    Sales.SalesOrderHeader
SET (
    STATISTICS_NORECOMPUTE = ON,
    IGNORE_DUP_KEY = ON,
    ALLOW_PAGE_LOCKS = ON
    )
;
ALTER INDEX ALL ON Production.Product
REBUILD WITH 
   (
       FILLFACTOR = 80
       , SORT_IN_TEMPDB = ON
       , STATISTICS_NORECOMPUTE = ON
   )
;

Weitere Informationen finden Sie unter ALTER INDEX (Transact-SQL).For more information, see ALTER INDEX (Transact-SQL).