Bonjour à toutes et à tous.

J'ai un petit soucis sur un bloc PL/SQL.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
PROCEDURE MaProcedure(pMonParametre1 IN NUMBER, ...)
IS
       pMaVariable NUMBER;
       ...
BEGIN
       CASE pMaVariable
          WHEN 1 THEN ... ;
          WHEN 2 THEN ... ;
          ELSE RAISE ValeurInconnue;
       END CASE;
       ...
EXCEPTION
      WHEN ValeurInconnue
      THEN jeVoudraisSortirDeMaProcedure;
END
/
J'aimerais savoir en fait comment sortir de ma procédure lorsque je soulève l'exception ValeurInconnue. Suffit-il de faire un :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
WHEN ValeurInconnue
THEN NULL;
Ou alors peut-être de faire un :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
WHEN ValeurInconnue
THEN EXIT;
? Je ne sais pas vraiment comment faire sur ce coup .

On m'a dit la chose suivante pour l'instant :
Après exécution de la procédure d’erreur, l’exécution revient au bloc de niveau immédiatement supérieur à celui qui contient la procédure EXCEPTION.
Un seul bloc = sortie du programme
Solution = encapsulation dans un «bloc virtuel»
Cela signifie, que je peux mettre tranquillou mon NULL et cela va me faire sortir de ma procédure une fois l'exception levée ?

Merci d'avance pour votre aide.

Bahan