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
index_handle
Il s'agit d'un entier qui identifie de manière unique un index manquant. Il peut être obtenu à partir des objets de gestion dynamique suivants :
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 |
|