Boucles PL/SQL

Boucles Pl Sql



Les boucles sont l'un des principaux éléments de base de la programmation. Nous utilisons des boucles pour créer les blocs de code gérables qui peuvent être exécutés plusieurs fois lorsqu'une certaine condition est vraie. Ils sont l'os fondamental lors de l'automatisation des tâches répétitives sans réécrire plusieurs fois un bloc de code.

Comme tous les principaux langages de programmation, PL/SQL prend en charge les boucles qui permettent de répéter un ensemble d'instructions jusqu'à ce qu'une certaine condition soit remplie.

Dans ce didacticiel, nous explorerons l'utilisation de l'instruction LOOP en PL/SQL pour exécuter de manière répétée un bloc de code.







Boucles Oracle

Le langage PL/SQL prend en charge les différentes constructions de boucle telles que la boucle 'for' et les boucles 'while'. Nous pouvons exprimer la syntaxe d'une boucle générique dans Oracle comme indiqué ci-dessous :



<< étiquette >> BOUCLER
instruction_boucle ;
END LOOP loop_label ;

Celui-ci contient le mot-clé LOOP et le corps de la boucle à exécuter et est entouré du mot-clé END LOOP.



Le bloc LOOP exécute les actions définies et renvoie le contrôle à la clause de boucle supérieure après l'achèvement. Ceci est généralement inclus dans une clause EXIT ou EXIT WHEN pour terminer la boucle après qu'une condition spécifique soit remplie. Cela permet d'éviter les boucles infinies.





Oracle For Loop Syntaxe :

Voici la syntaxe d'une boucle 'for' en PL/SQL :

COMMENCER
POUR boucle_variable IN [limite_inférieure..limite_supérieure] BOUCLE
-- code à exécuter dans la boucle
FIN DE BOUCLE ;
FIN;

La loop_variable vous permet de définir une boucle qui est utilisée pour contrôler la boucle et les bornes inférieure et supérieure. Les limites supérieure et inférieure spécifient les valeurs de plage où l'évaluation de la boucle se produit.



Oracle While Boucles

Nous pouvons également définir les boucles « while » en PL/SQL, comme le montre la syntaxe suivante :

COMMENCER
TANTQUE condition BOUCLE
-- action en boucle
FIN DE BOUCLE ;
FIN;

Dans une boucle 'while', l'action de boucle est exécutée à plusieurs reprises tant que la condition est vraie.

Curseur Oracle pour les boucles

Oracle prend également en charge les boucles 'cursor for' qui nous permettent d'exécuter un ensemble d'instructions pour chaque ligne d'un ensemble de résultats donné. La syntaxe peut être exprimée comme suit :

COMMENCER
FOR boucle_variable IN (SELECT colonne1, colonne2, ...
DE table1, table2, ...
OÙ condition) BOUCLE
-- action en boucle
FIN DE BOUCLE ;
FIN;

Exemples de boucles dans Oracle

Les exemples suivants couvrent les bases de l'utilisation des boucles de curseur for, while et for dans Oracle.

Exemple de boucle For Oracle :

Cet exemple montre comment utiliser une boucle 'for' pour imprimer les nombres de 1 à 10.

COMMENCER
POUR i EN 1..10 BOUCLE
DBMS_OUTPUT.PUT_LINE(i);
FIN DE BOUCLE ;
FIN;

Exemple de boucle While :

Nous pouvons effectuer une action similaire à l'aide d'une boucle while, comme illustré ci-dessous :

COMMENCER
DÉCLARER
je NOMBRE := 1;
COMMENCER
TANT QUE i <= 10 BOUCLE
DBMS_OUTPUT.PUT_LINE(i);
je := je + 1;
FIN DE BOUCLE ;
FIN;
FIN;

Cela devrait effectuer une action similaire à la boucle 'for'.

Curseur pour l'exemple de boucle :

L'exemple suivant montre comment utiliser la boucle 'curseur pour' pour obtenir le nom complet d'un client :

COMMENCER
POUR employé IN (SELECT first_name, last_name
DES employés) BOUCLE
DBMS_OUTPUT.PUT_LINE(employee.first_name || ' ' || employee.last_name);
FIN DE BOUCLE ;
FIN;

Exemple de sortie :

Conclusion

Dans cet article, vous avez rencontré trois principaux types de boucles dans le langage Oracle PL/SQL. Vous pouvez consulter la documentation pour explorer davantage.