sys.dm_db_missing_index_columns
Aktualisiert: 12. Dezember 2006
Gibt Informationen zu Spalten von Datenbanktabellen zurück, für die kein Index vorhanden ist. Bei sys.dm_db_missing_index_columns handelt es sich um eine dynamische Verwaltungsfunktion.
Syntax
sys.dm_db_missing_index_columns(index_handle)
Argumente
index_handle
Eine ganze Zahl, die einen fehlenden Index eindeutig identifiziert. Sie kann aus den folgenden dynamischen Verwaltungsobjekten abgerufen werden:
Zurückgegebene Tabelle
Spaltenname
Datentyp
Beschreibung
column_id
int
ID der Spalte.
column_name
sysname
Name der Tabellenspalte.
column_usage
varchar(20)
Art der Verwendung der Spalte durch die Abfrage. Folgende Werte sind möglich:
Wert
Beschreibung
EQUALITYDie Spalte wird in ein Prädikat einbezogen, das Gleichheit ausdrückt und folgendes Format aufweist: table.column =
constant_value
INEQUALITYDie Spalte wird in ein Prädikat einbezogen, das Ungleichheit ausdrückt, z. B. ein Prädikat in folgendem Format: table.column > constant_value Jeder Vergleichsoperator außer "=" drückt Ungleichheit aus. Die vollständige Liste der Vergleichsoperatoren finden Sie unter Vergleichsoperatoren (Datenbankmodul).
INCLUDEDie Spalte wird nicht zur Auswertung eines Prädikats, sondern aus einem anderen Grund verwendet, z. B. zum Abdecken einer Abfrage.
Hinweise
Von sys.dm_db_missing_index_columns zurückgegebene Informationen werden aktualisiert, wenn eine Abfrage vom Abfrageoptimierer optimiert wird. Sie werden nicht beibehalten. Informationen zu fehlenden Indizes werden nur bis zu einem Neustart von SQL Server gespeichert. Datenbankadministratoren sollten in regelmäßigen Abständen Sicherungskopien der Informationen zu fehlenden Indizes erstellen, wenn sie sie nach der Serverwiederverwendung aufbewahren möchten.
Weitere Informationen zum Aktivieren und Deaktivieren der Sammlung von Informationen zu fehlenden Indizes finden Sie unter Informationen zum Feature für fehlende Indizes.
Die Ausgabe der dynamischen Verwaltungsfunktion sys.dm_db_missing_index_columns kann von jedem Tool verwendet werden, das die einem index_handle-Wert entsprechenden Informationen zu fehlenden Indizes lesen, verarbeiten und in CREATE INDEX DDL-Anweisungen konvertieren kann, die den fehlenden Index implementieren. Weitere Informationen zum Erstellen von DDL-Anweisungen finden Sie unter Verwenden von fehlenden Indexinformationen zum Schreiben von CREATE INDEX-Anweisungen.
Weitere Informationen zu Einschränkungen dieses Features finden Sie unter Einschränkungen für die Verwendung des Features für fehlende Indizes.
Transaktionskonsistenz
Wenn eine Transaktion eine Tabelle erstellt oder löscht, werden die Zeilen, die Informationen zu fehlenden Indizes der gelöschten Objekte enthalten, aus diesem dynamischen Verwaltungsobjekt entfernt. Hierdurch bleibt die Transaktionskonsistenz erhalten. Weitere Informationen zur Transaktionskonsistenz in Bezug auf die dynamischen Verwaltungsobjekte für fehlende Indizes finden Sie unter Informationen zum Feature für fehlende Indizes.
Berechtigungen
Benutzern muss die VIEW SERVER STATE-Berechtigung oder eine Berechtigung, die die VIEW SERVER STATE-Berechtigung impliziert, erteilt werden, damit sie diese dynamische Verwaltungsfunktion abfragen können.
Beispiele
Im folgenden Beispiel wird eine Abfrage für die Address
-Tabelle und anschließend eine Abfrage mithilfe der dynamischen Verwaltungssicht sys.dm_db_missing_index_columns
ausgeführt, um die Tabellenspalten zurückzugeben, die keinen Index aufweisen.
USE AdventureWorks;
GO
SELECT City, StateProvinceID, PostalCode
FROM Person.Address
WHERE StateProvinceID = 9;
GO
SELECT mig.*, statement AS table_name,
column_id, column_name, column_usage
FROM sys.dm_db_missing_index_details AS mid
CROSS APPLY sys.dm_db_missing_index_columns (mid.index_handle)
INNER JOIN sys.dm_db_missing_index_groups AS mig ON mig.index_handle = mid.index_handle
ORDER BY mig.index_group_handle, mig.index_handle, column_id;
GO
Siehe auch
Verweis
sys.dm_db_missing_index_details
sys.dm_db_missing_index_groups
sys.dm_db_missing_index_group_stats
Andere Ressourcen
Informationen zum Feature für fehlende Indizes
Hilfe und Informationen
Informationsquellen für SQL Server 2005
Änderungsverlauf
Version | Verlauf |
---|---|
12. Dezember 2006 |
|