Share via


sys.dm_db_missing_index_columns

Mis à jour : 12 décembre 2006

Retourne des informations sur les colonnes des tables de base de données dans lesquelles un index est manquant. sys.dm_db_missing_index_columns est une fonction de gestion dynamique.

Syntaxe

sys.dm_db_missing_index_columns(index_handle)

Table retournée

Nom de la colonne

Type de données

Description

column_id

int

Identificateur de la colonne.

column_name

sysname

Nom de la colonne de la table.

column_usage

varchar(20)

Indique la manière dont la colonne est utilisée par la requête. Les valeurs possibles sont les suivantes :

Valeur

Description

EQUALITYLa colonne contribue à un prédicat qui exprime l'égalité, au format : table.column = constant_value

INEQUALITYLa colonne contribue à un prédicat qui exprime l'inégalité, par exemple, un prédicat au format : table.column > constant_value Tout opérateur de comparaison autre que "=" exprime l'inégalité. Pour obtenir une liste complète des opérateurs de comparaison, consultez Opérateurs de comparaison (moteur de base de données).

INCLUDELa colonne n'est pas utilisée pour évaluer un prédicat mais pour une autre raison ; par exemple, pour couvrir une requête.

Notes

Les informations retournées par sys.dm_db_missing_index_columns sont mises à jour lorsqu'une requête est optimisée par l'optimiseur de requête, et elles ne sont pas conservées de manière permanente. Les informations sur les index manquants sont simplement conservées jusqu'au redémarrage de SQL Server. Les administrateurs de base de données doivent effectuer régulièrement des copies de sauvegarde des informations sur les index manquants s'ils souhaitent conserver ces informations après le recyclage du serveur.

Pour plus d'informations sur l'activation et la désactivation de la collecte d'informations sur les index manquants, consultez À propos de la fonctionnalité d'index manquants.

Le résultat de la fonction de gestion dynamique sys.dm_db_missing_index_columns peut être utilisé par les outils pouvant lire les informations sur l'index manquant qui correspondent à un index_handle, traiter les informations, puis les convertir en instructions DDL CREATE INDEX qui implémentent l'index manquant. Pour plus d'informations sur la création d'instructions DDL, consultez Utilisation des informations d'index manquant pour l'écriture d'instructions CREATE INDEX.

Pour plus d'informations sur les limitations de cette fonctionnalité, consultez Limitations liées à l'utilisation de la fonctionnalité d'index manquants.

Cohérence transactionnelle

Si une transaction crée ou supprime une table, les lignes qui contiennent les informations d'index manquant concernant les objets supprimés sont retirées de cet objet de gestion dynamique, ce qui permet de préserver la cohérence des transactions. Pour plus d'informations sur la cohérence des transactions par rapport aux objets de gestion dynamique des index manquants, consultez À propos de la fonctionnalité d'index manquants.

Autorisations

Les utilisateurs doivent bénéficier de l'autorisation VIEW SERVER STATE ou de toute autorisation qui implique l'autorisation VIEW SERVER STATE pour interroger cette fonction de gestion dynamique.

Argument

Exemples

L'exemple suivant exécute une requête sur la table Address puis exécute une requête à l'aide de la vue de gestion dynamique sys.dm_db_missing_index_columns pour renvoyer les colonnes de table auxquelles il manque un index.

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

Voir aussi

Référence

sys.dm_db_missing_index_details
sys.dm_db_missing_index_groups
sys.dm_db_missing_index_group_stats

Autres ressources

À propos de la fonctionnalité d'index manquants

Aide et Informations

Assistance sur SQL Server 2005

Historique des modifications

Version Historique

12 décembre 2006

Nouveau contenu :
  • Ajout de la section Exemples.
Contenu modifié :
  • La définition de column_id a été corrigée.