Oracle
 sql >> Base de données >  >> RDS >> Oracle

Passez le contrôle à une ligne spécifique à l'aide de la commande Goto Label dans PLSQL

Un exemple est donné ci-dessous pour la commande PLSQL Goto Label pour demander au contrôle d'aller à un numéro de ligne spécifique dans certaines conditions. Supposons que vous souhaitiez passer le contrôle à une ligne particulière en cas d'exception lorsque no_data_found se produit. étiquette en utilisant <> vers cette ligne particulière pour la faire pointer au moment de l'exigence.Ce qui suit est un bloc PL/SQL anonyme illustrant ce scénario en utilisant <> avec l'instruction GoTo Label :SET SERVEROUTPUT ON;DECLARE v NUMBER;BEGIN BEGIN SELECT 1 INTO v FROM DUAL WHERE dummy ='V'; -- change dummy ='X' pour ignorer la section d'exception EXCEPTION WHEN NO_DATA_FOUND THEN DBMS_OUTPUT.put_line ('NO_Data_Found s'est produite.'); GOTO monétiquette ; FINIR; -- le code ci-dessous avant <> ne serait pas exécuté si une erreur se produisait ci-dessus -- car dans la section d'exception ci-dessus, il envoie le contrôle directement à l'étiquette <> -- mais si aucune erreur ne se produisait au-dessus, alors l'ensemble le programme serait exécuté v :=v + 1; DBMS_OUTPUT.put_line ('La valeur de la variable v est '||v); <> DBMS_OUTPUT.put_line ('Après le démarrage du traitement des étiquettes.');-- effectuez une tâche iciEND;/