Exécuter SQL
Depuis l’Éditeur SQL, vous pouvez exécuter les deux instructions SQL écrites de zéro et celles générées depuis les objets de la base de données, tel que décrit dans Générer les instructions SQL. Vous pouvez également exécuter les scripts SQL depuis les fichiers. Vous pouvez appeler la commande Exécuter depuis le menu Éditeur SQL, d’un raccourci clavier ou en cliquant sur le bouton Exécuter .
Vers exécuter les instructions SQL :
1.Si de multiples fenêtres de l’Éditeur SQL sont ouvertes, cliquez à l’intérieur de la fenêtre de l’Éditeur SQL où se trouve l’instruction à exécuter.
2.Assurez-vous que la source de données associée avec l’Éditeur SQL est connectée .
3.En option, sélectionnez l' instruction ou les instructions que vous voulez exécuter.
4.Suivez une des étapes suivantes :
•Cliquez sur Exécuter .
•Sélectionnez la commande de menu Éditeur SQL | Exécuter.
•Appuyez sur F5.
Si la source de données n’est pas connectée, une boîte de dialogue apparaît vous demandant de vous connecter à la source de données. Cliquez sur Connecter, le cas échéant.
Après avoir exécuté la commande Exécuter, toutes les instructions SQL qui se trouvent dans l’Éditeur SQL, ou les instructions sélectionnées, respectivement, sont exécutées. Si l’instruction extrait de multiples ensembles d’enregistrements, les résultats apparaissent dans des fenêtres de résultat, un pour chaque instruction.
Vous pouvez aussi exécuter des scripts SQL dans la fenêtre de Projet si les fichiers SQL sont inclus dans le projet, comme suit :
1.Dans la fenêtre de Projet, sélectionnez un fichier SQL que vous voulez exécuter.
2.Cliquez avec la touche de droite sur le fichier et sélectionnez Exécuter SQL depuis le menu contextuel. Si la source de données n’est pas connectée, une boîte de dialogue apparaît vous demandant de vous connecter à la source de données. Cliquez sur Connecter, le cas échéant.
Le Script SQL s’ouvre dans une nouvelle fenêtre de l'Éditeur SQL et est exécuté immédiatement.
Exécuter l’édition des données
Lorsque prise en charge de la source de données, vous pouvez exécuter une instruction SELECT pour l’édition des données. Ceci permet d’éditer les enregistrements extraits dans la fenêtre de Résultat après avoir exécuté la requête SELECT.
Pour exécuter les instructions SELECT pour l’édition des données :
1.Générez ou saisissez une instruction SELECT dans la fenêtre de l’Éditeur SQL.
2.Assurez-vous que la source de données est connectée . Si elle prend en charge l’édition des données depuis l’intérieur de l’Éditeur SQL, le bouton Exécuter pour l’édition des données est activé, et la commande de menu Éditeur SQL | Exécuter pour l’édition des données est disponible.
3.Suivez une des étapes suivantes :
a.Cliquez sur Exécuter l’édition des données .
b.Sélectionnez la commande de menu Éditeur SQL | Exécuter l’édition des données.
La fenêtre de Résultat est basculée dans le mode d’Édition et vous pouvez directement éditer les données de la base de données directement dans la grille de résultat.
Arrêter l’exécution
DatabaseSpy utilise une exécution est une extraction asynchrone quand une requête est lancée dans l’Éditeur SQL ou depuis une fenêtre d’Éditeur de Design. Tandis que l´exécution est en cours, DatabaseSpy affiche un message dans la fenêtre Message.
Si l’exécution prend beaucoup de temps, vous allez éventuellement être en mesure de l’arrêter en cliquant sur le bouton Arrêter Exécution/Extraction dans la barre d’outils de l’Éditeur SQL. Ce bouton n’apparaît que quand l’exécution est en cours. En annulant l’exécution ou l’extraction des enregistrements, un message « Exécution a été annulée » est affiché dans la barre de statut de la fenêtre de résultat.
Vous pouvez définir un délai d’expiration pour l’exécution des requêtes dans les options de l’Éditeur SQL. DatabaseSpy tentera d’arrêter les données une fois que la durée a expiré. Notez que le genre de la base de données et le pilote de la base de données doivent prendre en charge la configuration d’un délai d’expiration de la commande ; autrement, la requête continuera à être exécutée au-delà de la période du délai d’expiration. Dans ce cas, vous pouvez stopper l’exécution utilisant le bouton Arrêter Exécution/Extraction ; toutefois, sachez que certains pilotes ne prendront éventuellement pas en charge l’arrêt de l’exécution.
Définir le mode d’exécution
Vous pouvez choisir si vous voulez envoyer des instructions SQL au moteur de la base de données en entier, ou comme lots séparés. La fenêtre des propriétés fournit les paramètres Éditeur SQL requiert des points-virgules et Instructions de groupe pour l’exécution avec à cette fin.
La paramètre Instructions de groupe pour l'exécution avec fournit les options suivantes :
•points-virgules : Le parseur utilise les points-virgules comme séparateur d’instruction. Tout code SQL qui est terminé par un point-virgule est considéré comme instruction et envoyé au serveur séparément. Si les points-virgules manquent dans votre script SQL, une boîte de dialogue vous invite à les ajouter automatiquement.
•Pas de regroupement : Le script est envoyé au serveur en entier, sans aucune modification. Si le script contient des instructions multiples, et si l’on sait que le pilote ne prend pas en charge l’exécution de multiples instructions en bloc, cette option n’est pas utile. Dans ce cas, la boîte de dialogue vous demande cette limitation.
•Grammaire SQL : La version respective de la grammaire SQL est utilisée pour séparer les instructions quand celles-ci sont envoyées au serveur.
•Mot-clé GO : Un mot-clé GO doit être présent dans le script SQL pour séparer les blocs d’exécution.
Afficher des groupes d’exécution
La barre d’outils dans l’Éditeur SQL fournit le bouton Afficher les groupements pour l’exécution , qui permet une représentation graphique des blocs d’instruction qui seront envoyés au moteur de la base de données pour l’exécution.
Dans la capture d’écran ci-dessus, les regroupements pour l’exécution sont affichés quand l’option « points-virgules » est sélectionnée dans la liste déroulante Grouper les instructions pour l’exécution avec.
Arrêter l'exécution à l'erreur
Quand la fenêtre de l’Éditeur SQL est ouverte, la fenêtre des Propriétés inclut une propriété nommée Abandonner l'exécution à l'erreur. Cette option pourrait être utile quand vous exécutez les scripts SQL qui contiennent de multiples instructions, et, si toute instruction échoue, vous allez vouloir que l’exécution s’arrête à l’instruction correspondante. Pour activer ce comportement, sélectionnez la case à cocher Abandonner l'exécution à l'erreur.
Fenêtre des propriétés
Considérez l’exemple suivant : vous voulez exécuter un script par rapport à une base de données qui contient de multiples instructions INSERT. Si la case à cocher Abandonner l'exécution à l'erreur est activée, et qu’une instruction INSERT échoue, le script arrêtera l’exécution à l’instruction INSERT qui a échoué. Dans ce cas, toute instruction INSERT suivante ne sera pas exécutée. Si la case à cocher Abandonner l'exécution à l'erreur est désactivée, et qu’une instruction INSERT échoue, le script poursuivra l'exécution du reste des instructions INSERT, jusqu’à la la fin du script.
La statut d’exécution du script (y compris le nombre de lignes affectées) peut être consulté dans la fenêtre Messages, avec des informations supplémentaires sur l’erreur qui est apparue (le cas échéant). Cliquez sur le texte souligné dans la fenêtre Messages pour sauter à la ligne correspondante dans l’Éditeur SQL.
Arrêter l’exécution par un commentaire de script
Vous pouvez aussi arrêter l’exécution à la première erreur rencontrée en ajoutant le commentaire suivant à votre script SQL :
-- abort_execution_on_error: true |
Le commentaire abort_execution_on_error doit être sur une ligne et peut avoir une des valeurs suivantes :
-- abort_execution_on_error: true|false|yes|no|y|n|1|0 |
Pour ajouter un commentaire au-dessus du script, suivez une des étapes suivantes :
•Tapez le commentaire dans la fenêtre de l’Éditeur SQL.
•Placez le curseur sur une ligne vide dans l’Éditeur SQL, puis cliquez sur le bouton de la barre d’outils Insérer Abandonner à l’exécution .
•Cliquez avec la touche de droite dans la fenêtre de l’Éditeur SQL et sélectionnez Insérer Abandonner à l’exécution depuis le menu contextuel.
Assurez-vous que le mode d’exécution est défini aux « points-virgules », « Mot-clé GO », ou « Grammaire SQL ». Autrement, le commentaire sera ignoré. |
Vous pouvez ajouter le commentaire partout dans le script. Notez, toutefois, que ceci affectera uniquement les instructions SQL qui suivront. Par exemple, dans le script illustré ci-dessous, seule la deuxième INSERT sera affectée par le commentaire. En d’autres termes, toute instruction SQL avant le commentaire arrêtera l’exécution sur erreur uniquement si la propriété Abandonner l'exécution à l'erreur est définie.
Si un texte est sélectionné, le commentaire doit être dans ce texte pour qu’il puisse être appliqué.
Définir le commentaire est indépendant de la propriété Abandonner l'exécution à l'erreur décrite précédemment - il ne modifie ni ne respecte la propriété.