Udostępnij za pośrednictwem


sys.dm_db_missing_index_columns (języka Transact-SQL)

Zwraca informacje o kolumny tabela bazy danych, których brakuje indeksu, z wyłączeniem przestrzennej indeksy.sys.dm_db_missing_index_columns jest funkcja dynamicznego zarządzania.

Składnia

sys.dm_db_missing_index_columns(index_handle)

Argumenty

Zwracana tabela

Nazwa kolumny

Typ danych

Opis

column_id

int

Identyfikator kolumna.

column_name

sysname

Nazwakolumna tabela.

column_usage

varchar(20)

Jak kolumna jest używana przez kwerendę.Możliwe wartości to:

WartośćOpis
RÓWNOŚĆKolumna przyczynia się do predykatu wyraża równości formularza: tabela.kolumna =constant_value
NIERÓWNOŚĆKolumna częocią predykatu, który wyraża nierówności, na przykład predykat formularza: tabela.kolumna > constant_valueDowolny operator porównania innych niż "=" wyraża nierówności.Aby uzyskać pełną listę operatorów porównania, zobacz Operatory porównania (aparat bazy danych).
DOŁĄCZKolumna nie jest używany do oceny predykatu, ale jest używana do innej przyczyny, na przykład na pokrycie kwerendy.

Uwagi

Informacje zwrócone przez sys.dm_db_missing_index_columns jest aktualizowany, gdy kwerenda jest zoptymalizowane przez optymalizator kwerendyi nie jest zachowywane.Brak informacji o indeksie jest trzymane tylko do SQL Server jest ponownie uruchamiany.Administratorzy bazy danych należy okresowo tworzenia kopii kopia zapasowa brakujące informacje o indeksach, jeśli chcą zachować po recyklingu serwera.

Aby uzyskać informacje dotyczące włączania i wyłączania brakujących informacji indeksu kolekcja, zobacz Brak funkcja Indeksy — informacje.

Dane wyjściowe z sys.dm_db_missing_index_columns funkcja dynamicznego zarządzania może być używana przez dowolne narzędzie może odczytywać brakujące informacje indeksu, który odpowiada index_handle, przetwarzanie informacji i przekonwertować na instrukcje CREATE INDEX DDL , które implementują brakuje indeksu.Aby uzyskać więcej informacji na temat tworzenia instrukcji DDL , zobacz Utwórz indeks instrukcjach przy użyciu brakujące informacje indeksu.

Aby uzyskać więcej informacji dotyczących ograniczenia tej funkcji, zobacz Ograniczenia funkcji brakujące indeksów.

Spójność transakcji

Tworzy lub porzuca tabelatransakcji wiersze zawierające brakujące informacje indeksu elementów usuniętych obiektów są usuwane z tego obiektu dynamicznego zarządzania, zachowania spójności transakcji.Aby uzyskać więcej informacji dotyczących transakcji spójności w odniesieniu do Brak indeksy obiektów dynamicznego zarządzania, zobacz Brak funkcja Indeksy — informacje.

Uprawnienia

Użytkownicy muszą dysponować uprawnienie WYŚWIETL stan serwera lub żadnych uprawnień, które pociąga za sobą uprawnienie WYŚWIETL stan serwera funkcja dynamicznego zarządzaniakwerendy.

Przykłady

Poniższy przykład uruchamia kwerendę przeciwko Address tabela , a następnie uruchamia kwerendę za pomocą sys.dm_db_missing_index_columns dynamiczny widok zarządzania zwraca kolumny tabela , w których brakuje indeksu.

USE AdventureWorks2008R2;
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