sys.dm_db_missing_index_details
Добавления: 5 декабря 2005 г.
Возвращает подробные сведения об отсутствующих индексах.
Имя столбца | Тип данных | Описание |
---|---|---|
index_handle |
int |
Идентифицирует специфический отсутствующий индекс. Этот идентификатор уникален для сервера. Столбец index_handle является ключевым для данной таблицы. |
database_id |
smallint |
Идентифицирует базу данных, в которой находится таблица с отсутствующим индексом. |
object_id |
int |
Идентифицирует таблицу, в которой отсутствует индекс. |
equality_columns |
nvarchar(4000) |
Список столбцов с разделителями-запятыми, соответствующих предикатам равенства в форме: table.column = |
inequality_columns |
nvarchar(4000) |
Список столбцов с разделителями-запятыми, который соответствует предикатам неравенства, например предикатам в форме: table.column > constant_value Любой оператор сравнения, кроме «=», выражает неравенство. Полный список операторов сравнения см. в разделе Операторы сравнения (компонент Database Engine). |
included_columns |
nvarchar(4000) |
Список столбцов с разделителями-запятыми, необходимых в качестве столбцов для запроса. Дополнительные сведения о включенных столбцах см. в разделе Создание индексов с включенными столбцами. |
statement |
nvarchar(4000) |
Имя таблицы, в которой отсутствует индекс. |
Замечания
Сведения, возвращенные представлением sys.dm_db_missing_index_details, будут обновленными, если запрос оптимизирован оптимизатором запросов и не является сохраненным. Сведения об отсутствующих индексах хранятся только до перезапуска SQL Server. Администраторы базы данных должны периодически делать резервные копии сведений об отсутствующих индексах, чтобы сохранить их после перезагрузки сервера.
Чтобы определить, какие специфические отсутствующие индексы является частью групп отсутствующих индексов, можно выполнить запрос к динамическому административному представлению sys.dm_db_missing_index_groups, объединив его по эквивалентности с представлением sys.dm_db_missing_index_details, основанным на столбце index_handle.
Дополнительные сведения о включении и отключении сбора данных об отсутствующих индексах см. в разделе О функции отсутствующих индексов.
Дополнительные сведения об ограничениях этой возможности см. в разделе Ограничения на использование функции отсутствующих индексов.
Использование сведений об отсутствующих индексах в инструкциях CREATE INDEX
Для преобразования сведений, возвращенных представлением sys.dm_db_missing_index_details инструкции CREATE INDEX, столбцы равенства должны быть помещены перед столбцами неравенства, а вместе они должны образовать индекс ключа. Включенные столбцы должны быть добавлены в инструкцию CREATE INDEX с помощью предложения INCLUDE. Чтобы определить эффективный порядок столбцов равенства, разместите столбцы согласно частоте их выборки: перечислите наиболее часто выбираемые столбцы вначале (крайнее левое положение в списке столбцов). Дополнительные сведения о написании инструкций CREATE INDEX с помощью сведений об отсутствующем индексе, возвращенных представлением sys.dm_db_missing_index_details см. в разделе Использование сведений об отсутствующих индексах для формирования инструкций CREATE INDEX.
Согласованность транзакций
Если транзакция создает или удаляет таблицу, то строки, содержащие сведения отсутствующих индексов об удаленных объектах, удаляются из данного объекта DMO, сохраняя согласованность транзакций. Дополнительные сведения о последовательности транзакций относительно отсутствующих индексов объектов DMO см. в разделе О функции отсутствующих индексов.
Разрешения
Пользователям необходимо предоставить разрешение VIEW SERVER STATE или любое разрешение, которое подразумевает разрешение VIEW SERVER STATE, чтобы выполнить запрос к данному динамическому административному представлению.
См. также
Справочник
sys.dm_db_missing_index_columns
sys.dm_db_missing_index_groups
sys.dm_db_missing_index_group_stats
Другие ресурсы
О функции отсутствующих индексов