Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2362 connectés 

  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

   Exception definie par l utilisateur sous ORACLE (+Delphi) [RESOLU]

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Exception definie par l utilisateur sous ORACLE (+Delphi) [RESOLU]

n°514915
mkracing66
Posté le 15-09-2003 à 14:19:27  profilanswer
 

Je viens de coder un trigger avec des blocs de tests, pour chaque bloc g defini des exceptions, a chaque test errone j appelle par un RAISE l exception correspondante...
Je DOIS traiter ces exceptions sur mon appli (Delphi), comment puis je faire pour eviter l erreur ORA-06510, je comprends bien qu il me demande de coder un traitement pour chaque exception mais je n en ai nullement besoin , g bien essaye de mettre un bloc du style :  
 
EXCEPTION
  WHEN OTHER THEN
    ROLLBACK;
END;
 
mais ca ne regle en rien mon probleme....je voudrais juste pouvoir sous delphi recuperer le nom de "mon" exception....
 
ex :  
 
errBadDate exception
 
....RAISE errBadDate;
 
=> je voudrais recup errBadDate en exception sous Delphi sans declencher d erreur du style ORA-06510 dans mon trigger
 
 
BREF pour resumer je voudrais generer une exception sous ORACLE dont je recuperais la valeur sous Delphi pour effectuer le traitement adequat...
 
Qqun peut il m aider a ce sujet ? plz HELP ! je remercie toute ame bien veillante qui pourra me repondre  :jap:


Message édité par mkracing66 le 02-10-2003 à 11:17:15
mood
Publicité
Posté le 15-09-2003 à 14:19:27  profilanswer
 

n°515354
mkracing66
Posté le 15-09-2003 à 23:44:27  profilanswer
 

personne n a d idee ou tout le monde s en fout de oracle ? :p:p:p:p

n°529127
mkracing66
Posté le 02-10-2003 à 11:15:26  profilanswer
 

Pour aider ceux qui seraient amenes a faire la meme chose voici ce que j ai pu trouve apres moult tests, recherches dans la doc oracle etc...
 
Sous oracle dans sa proc stockee ou trigger il faut mettre un bloc standard du style "raise" et dans le bloc pour le handle des exceptions il faut utiliser "raise_application_error".
 
Sous delphi, il faut utiliser des elements un peu plus specifiques des exceptions.
 
Par exemple :  
 
Pour Oracle

Code :
  1. BEGIN
  2.   IF condition THEN
  3.     RAISE myerror;
  4.   END IF;
  5. EXCEPTION
  6.   WHEN myerror THEN
  7.     RAISE_APPLICATION(-20000,'test descriptif'); -- <= -20000 etant une valeur decidee de facon arbitraire (il existe une plage bien precise)
  8. END;


 
Pour Delphi

Code :
  1. Try
  2.   ...
  3. Except
  4.   on E : Exception Do
  5.   Begin
  6.     if E is EDBEngineError Then
  7.     begin
  8.       for i:= 0 to EDBEngineError( E).ErrorCount - 1 Do
  9.       begin
  10.         // ivaleur recupere le numero de l exception cad 20000
  11.         ivaleur := EDBEngineError( E).Errors[i].NativeError;
  12.       end;
  13.     end;
  14.   end;
  15. end;


 
Voila ca m a bien pris la tete, en esperant que ca en aidera certains ;)


Message édité par mkracing66 le 02-10-2003 à 11:16:19
n°1140422
bourhoud
Posté le 05-07-2005 à 14:32:20  profilanswer
 

Citation :

RAISE_APPLICATION(-20000,'test descriptif');


 
 
juste un ptit détail : c

Code :
  1. RAISE_APPLICATION_ERROR(-20000,'test descriptif')

sous oracle ...  ;)  ;)


Message édité par bourhoud le 05-07-2005 à 14:33:01

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

   Exception definie par l utilisateur sous ORACLE (+Delphi) [RESOLU]

 

Sujets relatifs
[résolu] Javadoc : 3000 sources à parser dans 125 répertoirescomment reutiliser des $variables dans un formulaire php ? [resolu]
[ Delphi ] Copier une instance de classe[Delphi] Problème de transparence d'images
Transfert bdd free --> OVH [résolu][C#] unable to attach to asp.net process [résolu]
[PHP] Upload de fichier via "input type=file" [résolu : bug a la con][Resolu] Pb Formulaire + PHP -> le bouton Submit rafraichit la page...
[Résolu] Free et upload de fichiers[question stupide] geters/seters [résolu, merci]
Plus de sujets relatifs à : Exception definie par l utilisateur sous ORACLE (+Delphi) [RESOLU]


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR