Les exceptions les plus utilisées

En dehors de l’exception « NOT_DATA_FOUND » que nous avons vue dans les exemples précédents, il existe une multitude d’autres exceptions. Nous n’allons pas les citer toutes dans ce livre mais en voici quelques-unes qui peuvent être utiles.

CURSOR_ALREADY_OPEN : le curseur est déjà ouvert. Il faut le fermer avant de le réouvrir (sqlcode --> 06511)

INVALID_NUMBER : la variable utilisée ne contient pas un numéro valide (sqlcode --> 01722)

NOT_LOGGED_ON : l’utilisateur n’est pas connecté à la base de données (sqlcode --> 01012)

TOO_MANY_ROWS : la sélection ramène plusieurs lignes alors que le select ne prévoit qu’une seule occurrence, faire un curseur (sqlcode --> 01422)

ZERO_DIVIDE : division par zéro (sqlcode --> 01476)

Pour traiter tout type d’erreur, il est préférable d’ajouter systématiquement un test de ce type afin d’afficher l’erreur au moindre problème.


WHEN OTHERS THEN 
   DBMS_OUTPUT.PUT_LINE( 'Le numéro de l erreur est : '|| 
TO_CHAR( SQLCODE )) ; 
     DBMS_OUTPUT.PUT_LINE( 'correspondant à : '|| 
TO_CHAR( SQLERRM )) ;
 
Pour consulter la suite, découvrez le livre suivant :
couv_RI3SQL.png
60-signet.svg
En version papier
20-ecran_lettre.svg
En version numérique
41-logo_abonnement.svg
En illimité avec l'abonnement ENI
130-boutique.svg
Sur la boutique officielle ENI
Précédent
Le contrôle des flux
Suivant
La gestion des erreurs en Transact SQL