Analyse d'une requête

Moteur de base de données SQL Server peut afficher la façon dont il parcourt les tables et utilise les index pour accéder aux données d'une requête ou de toute autre instruction DML (par exemple, une mise à jour) et les traiter. Un plan d'exécution est affiché. Pour analyser une requête qui s'exécute lentement, il est utile d'examiner son plan d'exécution afin de déterminer la cause du problème. Pour plus d'informations sur la façon dont SQL Server crée et utilise les plans d'exécution, consultez Traitement des instructions SQL et Mise en mémoire cache et réutilisation du plan d'exécution.

Vous pouvez afficher les plans d'exécution au moyen des méthodes suivantes :

  • SQL Server Management Studio

    Affiche soit un plan d'exécution estimé au format graphique (les instructions ne sont pas exécutées) ou le plan d'exécution réel au format graphique (les instructions sont exécutées), que vous pouvez enregistrer et afficher dans Management Studio.

  • Options de l'instruction SET Transact-SQL

    En utilisant les options de l'instruction SET Transact-SQL, vous pouvez produire des plans d'exécution estimés et réels au format XML ou texte.

  • Classes d'événements du SQL Server Profiler

    Vous pouvez sélectionner des classes d'événements du SQL Server Profiler à inclure dans les traces qui génèrent des plans d'exécution estimés et réels au format XML ou texte dans leurs résultats.

Lorsque vous utilisez l'une de ces méthodes pour afficher des plans d'exécution, c'est le meilleur plan employé par le Moteur de base de données pour des instructions DML (Data Manipulation Language) et Transact-SQL spécifiques qui est affiché. Le plan fournit des informations de compilation au sujet des procédures stockées et des procédures stockées appelées qui sont appelées à un nombre arbitraire de niveaux d'appel. Par exemple, l'exécution d'une instruction SELECT peut montrer que le Moteur de base de données recourt à une analyse de table pour obtenir les données. Elle peut également indiquer qu'une analyse d'index sera utilisée si le Moteur de base de données détermine que cette méthode est plus rapide pour récupérer les données de la table.

Dans cette section