|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||
|
Membre régulier
![]() Inscription : décembre 2004 Messages : 142 ![]() |
Bonjour à tous,
Dans une procédure stockée (INTEBASE 6.0), comment contrôler la bonne exécution d'un ordre SQL ? Exemple : si je fais : Code :
Excusez-moi pour cette question de syntaxe, mais je n'ai pas à disposition la doc INTERBASE. Autre chose : comment doit-on commiter un ordre SQL dans une procédure stockée ? Dans le tuto de Etienne Bar (ça, je peux le consulter !), je n'ai rien vu concernant ce point. Merci de votre réponse. |
||
|
|
00
|
|
|
#2 |
|
Membre habitué
![]() Inscription : février 2005 Messages : 124 ![]() |
>> A priori, s'il y a un probleme avec la requete, la procédure devrait se terminer et générer une erreur IB. Sinon tu peux toujours faire un SELECT juste derriere pour vérifier l'existence de la ligne dans la table.
>> Pour commiter une requete, tu n'as qu'a exécuter la commande 'COMMIT;' à tous les endroits de ta proc stockée ou tu souhaites sauvegarder la transaction. |
|
|
00
|
|
|
#3 |
|
Membre régulier
![]() Inscription : décembre 2004 Messages : 142 ![]() |
Merci de ta réponse. Je vais essayer.
Merci aussi à Etienne Bar pour son tuto. A+ |
|
|
00
|
|
|
#4 | ||
|
Membre Expert
![]() Frédéric Inscription : octobre 2002 Messages : 1 722 ![]() |
Dans Interbase 6 on ne commit pas pas les procédures stoquées, seul l'application cliente peux débuter une transaction et donc la commiter ou annuler.
Cependant lorqu'un ordre SQL dans une PS se termine mal (code erreur) par défaut toute la PS est annulée et le code erreur est remonté au client. Par contre il est possible de capturer les codes erreurs dans une PS afin de ne pas annuler ce qui a été fait précédemment ou exécuter une autre action. Il suffit d'utiliser When xxx nn do exemple : Code :
|
||
|
|
00
|
Copyright © 2000-2012 - www.developpez.com