|
Dieser Artikel wurde manuell übersetzt. Bewegen Sie den Mauszeiger über die Sätze im Artikel, um den Originaltext anzuzeigen.
|
Übersetzung
Original
|
Erstellen von Indizes mit eingeschlossenen Spalten
-
Es kann sich um Datentypen handeln, die als Indexschlüsselspalten nicht zulässig sind. -
Sie werden von Database Engine (Datenbankmodul) beim Berechnen der Indexschlüsselspalten oder Indexschlüsselgröße nicht berücksichtigt.
Hinweis
|
|---|
|
|
In diesem Thema
-
Vorbereitungen:
-
So erstellen Sie einen Index mit Nichtschlüsselspalten mit:
Entwurfsempfehlungen
-
Überarbeiten Sie nicht gruppierte Indizes mit großen Indexschlüsseln so, dass nur Spalten, die für Suchen und Suchvorgänge verwendet werden, Schlüsselspalten sind. Erklären Sie alle anderen Spalten, die die Abfrage abdecken, zu Nichtschlüsselspalten. Auf diese Weise sind alle Spalten vorhanden, die zum Abdecken der Abfrage erforderlich sind, der Indexschlüssel selbst ist jedoch klein und effizient. -
Schließen Sie Nichtschlüsselspalten in einen nicht gruppierten Index ein, damit die Größenbegrenzungen des aktuellen Indexes von maximal 16 Schlüsselspalten und einer maximalen Größe des Indexschlüssels von 900 Byte nicht überschritten werden. Nichtschlüsselspalten werden von Database Engine (Datenbankmodul) beim Berechnen der Indexschlüsselspalten oder Indexschlüsselgröße nicht berücksichtigt.
Einschränkungen
-
Nichtschlüsselspalten können nur für nicht gruppierte Indizes definiert werden. -
Alle Datentypen außer text, ntext und image können als Nichtschlüsselspalten verwendet werden. -
Berechnete Spalten, die deterministisch und entweder präzise oder unpräzise sind, können als Nichtschlüsselspalten verwendet werden. Weitere Informationen finden Sie unter Indizes in berechneten Spalten. -
Berechnete Spalten, die aus den Datentypen image, ntext und text abgeleitet werden, können Nichtschlüsselspalten sein, wenn der Datentyp der berechneten Spalte als Nichtschlüssel-Indexspalte zulässig ist. -
Nichtschlüsselspalten können nur aus einer Tabelle gelöscht werden, wenn der Index der Tabelle zuvor gelöscht wird. -
Nichtschlüsselspalten können nur zum Ausführen der folgenden Aufgaben geändert werden: -
Ändern der NULL-Zulässigkeit der Spalte von NOT NULL in NULL. -
Vergrößern der Länge von varchar-, nvarchar- oder varbinary-Spalten.
-
Sicherheit
So erstellen Sie einen Index mit Nichtschlüsselspalten
-
Klicken Sie im Objekt-Explorer auf das Pluszeichen, um die Datenbank zu erweitern, die die Tabelle enthält, in der Sie einen Index mit Nichtschlüsselspalten erstellen möchten. -
Klicken Sie auf das Pluszeichen, um den Ordner Tabellen zu erweitern. -
Klicken Sie auf das Pluszeichen, um die Tabelle zu erweitern, für die Sie einen Index mit Nichtschlüsselspalten erstellen möchten. -
Klicken Sie mit der rechten Maustaste auf den Ordner Index, zeigen Sie auf Neuer Index, und wählen Sie Nicht gruppierter Index… aus. -
Geben Sie in das Dialogfeld Neuer Index auf der Seite Allgemein den Namen des neuen Indexes in das Feld Indexname ein. -
Klicken Sie auf der Registerkarte Indexschlüsselspalten auf Hinzufügen…. -
Aktivieren Sie im Dialogfeld Spalten auswählen austable_name das oder die Kontrollkästchen der Tabellenspalte oder der Spalten, die dem Index hinzugefügt werden sollen. -
Klicken Sie auf OK. -
Klicken Sie auf der Registerkarte Eingeschlossene Spalten auf Hinzufügen…. -
Aktivieren Sie im Dialogfeld Spalten auswählen austable_name das oder die Kontrollkästchen der Tabellenspalte oder der Spalten, die dem Index als Nichtschlüsselspalten hinzugefügt werden sollen. -
Klicken Sie auf OK. -
Klicken Sie im Dialogfeld Neuer Index auf OK.
So erstellen Sie einen Index mit Nichtschlüsselspalten
-
Stellen Sie im Objekt-Explorer eine Verbindung zu einer Instanz von Database Engine (Datenbankmodul) her. -
Klicken Sie in der Standardleiste auf Neue Abfrage. -
Kopieren Sie das folgende Beispiel, fügen Sie es in das Abfragefenster ein, und klicken Sie auf Ausführen. USE AdventureWorks2012; GO -- Creates a nonclustered index on the Person.Address table with four included (nonkey) columns. -- index key column is PostalCode and the nonkey columns are -- AddressLine1, AddressLine2, City, and StateProvinceID. CREATE NONCLUSTERED INDEX IX_Address_PostalCode ON Person.Address (PostalCode) INCLUDE (AddressLine1, AddressLine2, City, StateProvinceID); GO
Hinweis