Déclaration de cas Oracle PL/SQL

Declaration De Cas Oracle Pl Sql



Le flux de contrôle est l'un des principaux éléments de base de la programmation. Il définit l'ordre dans lequel les différents blocs de code sont exécutés dans un programme.

Comme la plupart des langages de programmation, le langage Oracle PL/SQL fournit diverses instructions de flux de contrôle telles que IF-THEN, CASE, FOR, WHILE, etc.







Dans cet article, nous apprendrons à utiliser l'instruction CASE en PL/SQL pour introduire le flux de contrôle dans nos requêtes Oracle.



Introduction à l'instruction CASE

L'instruction CASE vous permet de définir une séquence d'instructions. L'instruction case sélectionne ensuite une séquence à exécuter en fonction de la condition spécifiée.



Considérez-le comme un moyen plus efficace de déclarer un ensemble de blocs si-alors tout en préservant la lisibilité.





Nous pouvons exprimer la syntaxe de l'instruction CASE dans Oracle comme indiqué ci-dessous :

CAS
QUAND condition1 ALORS résultat1
QUAND condition2 ALORS résultat2
...
SINON résultat
FIN

L'instruction CASE évalue chaque condition dans les clauses WHEN de cette syntaxe.



Si l'instruction trouve une instruction correspondante, elle renvoie le résultat correspondant. Cependant, dans certains cas, l'instruction case peut ne pas trouver de condition correspondante. Dans un tel scénario, l'instruction exécute le résultat défini dans le bloc ELSE.

REMARQUE : Le bloc ELSE est facultatif. S'il n'est pas disponible, le moteur de base de données utilise la syntaxe suivante :

AUTRE:
RELEVER CASE_NOT_FOUND ;

Cela permet au moteur de base de données de déclencher une exception et de suspendre l'exécution lorsqu'il n'y a pas de condition correspondante.

Exemple 1 : Exemple de base de l'instruction CASE

Cet exemple montre un exemple d'utilisation de base de l'opérateur case dans Oracle :

déclarer
numéro d'âge ;
entrée char(10);
commencer
âge := 24;
âge du cas
quand 17 alors
entry := 'défini';
quand 24 alors
entrée := '9.99';
quand 45 alors
entrée :='15.99';
autre
entrée := 'non autorisé';
fin de cas ;
DBMS_OUTPUT.PUT_LINE(entrée);
fin;

L'illustration fournie doit tester toute condition correspondante et renvoyer l'état correspondant. Par exemple, puisque la condition de correspondance est 24, la clause renvoie comme suit :

9,99

Exemple 2 : Instruction CASE avec une table de base de données

Cet exemple utilise l'instruction case avec une table de base de données.

sélectionnez prénom, nom, salaire,
Cas
quand le salaire 2 500 puis 'Élevé'
sinon 'Inconnu'
se termine comme salaire_statut
des EMPLOYÉS ;

La requête fournie utilise l'instruction case pour tester la fourchette de salaires à partir de la table des employés.

La valeur résultante est comme indiqué ci-dessous :

Conclusion

Dans cet article, vous avez appris à utiliser l'instruction de cas Oracle pour tester les différentes conditions et effectuer une action si l'une est vraie.