Résumé : dans ce tutoriel, vous découvrirez le bloc anonyme PL/SQL et comment l’exécuter à l’aide des outils SQL*Plus et SQL Developer.
Synthèse du bloc anonyme PL/SQL
PL/SQL est un langage structuré en blocs dont le code est organisé en blocs. Un bloc PL/SQL est constitué de trois sections : la section de déclaration, la section exécutable et la section de gestion des exceptions. Dans un bloc, la section exécutable est obligatoire tandis que les sections de déclaration et de traitement des exceptions sont facultatives.
Un bloc PL/SQL a un nom. Les fonctions ou les procédures sont un exemple de bloc nommé. Un bloc nommé est enregistré dans le serveur de la base de données Oracle et peut être réutilisé ultérieurement.
Un bloc sans nom est un bloc anonyme. Un bloc anonyme n’est pas enregistré dans le serveur de la base de données Oracle, il est donc juste pour une utilisation unique. Cependant, les blocs anonymes PL/SQL peuvent être utiles à des fins de test.
L’image suivante illustre la structure d’un bloc PL/SQL:
1) Section de déclaration
Un bloc PL/SQL a une section de déclaration où vous déclarez les variables, allouez la mémoire pour les curseurs et définissez les types de données.
2) Section exécutable
Un bloc PL/SQL possède une section exécutable. Une section exécutable commence par le mot clé BEGIN
et se termine par le mot clé END
. La section exécutable doit avoir au moins une instruction exécutable, même si c’est l’instruction NULL
qui ne fait rien.
3) Section de traitement des exceptions
Un bloc PL/SQL a une section de traitement des exceptions qui commence par le mot clé EXCEPTION
. La section de traitement des exceptions est l’endroit où vous attrapez et traitez les exceptions soulevées par le code dans la section d’exécution.
Notez qu’un bloc lui-même est une déclaration exécutable, donc vous pouvez imbriquer un bloc dans d’autres blocs.
Exemple de bloc anonyme PL/SQL
L’exemple suivant montre un bloc anonyme PL/SQL simple avec une section exécutable.
La section exécutable appelle la procédure DMBS_OUTPUT.PUT_LINE
pour afficher le message "Hello World"
à l’écran.
Exécuter un bloc anonyme PL/SQL à l’aide de SQL*Plus
Une fois que vous avez le code d’un bloc anonyme, vous pouvez l’exécuter à l’aide de SQL*Plus, qui est une interface de ligne de commande pour l’exécution d’une instruction SQL et de blocs PL/SQL fournie par Oracle Database.
L’image suivante illustre comment exécuter un bloc PL/SQL à l’aide de SQL*Plus:
D’abord, connectez-vous au serveur de la base de données Oracle en utilisant un nom d’utilisateur et un mot de passe.
Deuxièmement, activez la sortie du serveur à l’aide de la commande SET SERVEROUTPUT ON
afin que la procédure DBMS_OUTPUT.PUT_LINE
affiche du texte à l’écran.
Troisièmement, tapez le code du bloc et saisissez une barre oblique ( /
) pour demander à SQL*Plus d’exécuter le bloc. Une fois que vous avez tapé la barre oblique (/), SQL*Plus exécutera le bloc et affichera le message Hello World
à l’écran comme indiqué dans les illustrations.
Notez que vous devez exécuter la commande SET SERVEROUTPUT ON
dans chaque session que vous connectez à la base de données Oracle afin d’afficher le message en utilisant la procédure DBMS_OUTPUT.PUT_LINE
.
Pour exécuter à nouveau le bloc que vous avez saisi, vous utilisez la commande /
au lieu de tout taper depuis le début :
Si vous voulez modifier le bloc de code, utilisez la commande edit
. SQL*Plus écrira le bloc de code dans un fichier et l’ouvrira dans un éditeur de texte comme le montre l’image suivante:
Vous pouvez modifier le contenu du fichier comme suit:
Et enregistrer et fermer le fichier. Le contenu du fichier sera écrit dans le tampon et recompilé.
Après cela, vous pouvez exécuter à nouveau le bloc de code, il utilisera le nouveau code:
Exécuter un bloc anonyme PL/SQL en utilisant SQL Developer
D’abord, connectez-vous au serveur de la base de données Oracle en utilisant Oracle SQL Developer.
Deuxièmement, créez un nouveau fichier SQL nommé anonymous-block.sql
résidant dans le répertoire C:\plsql
qui stockera le code PL/SQL.
Troisièmement, saisissez le code PL/SQL et exécutez-le en cliquant sur le bouton Exécuter ou en appuyant sur le raccourci clavier Ctrl-Enter.
Plus d’exemples de blocs anonymes PL/SQL
Dans cet exemple, nous déclarons d’abord une variable l_message
qui contient le message d’accueil. Et ensuite, dans la section d’exécution, nous utilisons la procédure DBMS_OUTPUT.PUTLINE
pour montrer le contenu de cette variable au lieu d’utiliser une chaîne littérale.
Voici la sortie:
Hello World!
L’exemple de bloc anonyme suivant ajoute une section de traitement des exceptions qui attrape ZERO_DIVIDE
l’exception soulevée dans la section exécutable et affiche un message d’erreur.
Le message d’erreur est :
ORA-01476: divisor is equal to zero
Maintenant, vous devriez savoir comment créer des blocs anonymes PL/SQL et les exécuter en utilisant les outils SQL*Plus et Oracle SQL Developer.
- Ce tutoriel vous a-t-il été utile ?
- OuiNon
.