Quel est lordre dexécution des requêtes SQL?


Meilleure réponse

Lexécution des requêtes SQL est une combinaison de plusieurs processus qui inclut

1. Analyse.

2. Optimisation.

3. Génération de source ou de source de ligne

4. Exécution

Analyse:

Lorsquune instruction SQL est exécutée, elle lance un appel danalyse à la base de données pour préparer linstruction à lexécution. Lappel danalyse ouvre ou crée un curseur, qui est un handle pour la zone SQL privée spécifique à la session qui contient une instruction SQL analysée et dautres informations de traitement.

Pendant lappel danalyse, la base de données effectue les vérifications suivantes :

Vérification de la syntaxe

Vérification sémantique

Vérification du pool partagé

Optimisation SQL

Au cours de la phase doptimisation, Database doit effectuer une analyse matérielle au moins une fois pour chaque instruction DML unique et effectue loptimisation pendant cette analyse.

Génération de source de ligne SQL

Une source de ligne est un ensemble de lignes renvoyé par une étape du plan dexécution avec une structure de contrôle qui peut traiter les lignes de manière itérative. La source de ligne peut être une table, une vue ou le résultat dune opération de jointure ou de regroupement.

Le générateur de source de ligne produit une arborescence de source de ligne, qui est une collection de sources de ligne. Larborescence des sources de ligne montre les informations suivantes:

Un ordre des tables référencées par linstruction

Une méthode daccès pour chaque table mentionnée dans linstruction

A méthode de jointure pour les tables affectées par les opérations de jointure dans linstruction

Opérations sur les données telles que filtrer, trier ou agréger

Exécution SQL

Lors de lexécution, le moteur SQL exécute chaque source de ligne dans larborescence produite par le générateur de source de ligne.

Réponse

Vous souhaitez en savoir plus sur Exécution de requêtes de base de données SQL? Voir notre vidéo

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *