Précédent   Forum des professionnels en informatique > Bases de données > Oracle > Interfaces de programmation
Interfaces de programmation Forum d'entraide sur l'utilisation des API Oracle : Pré-compilateurs, OCI, OCCI, etc.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 19/03/2011, 23h55   #1
Invité régulier
 
Inscription : juillet 2009
Messages : 41
Détails du profil
Informations forums :
Inscription : juillet 2009
Messages : 41
Points : 8
Points : 8
Par défaut [OCILIB] OCI_FetchNext : Quel conseil pour tester les cas d'erreurs?

Bonjour à tous,

Tout est dans le titre...
Les fonctions OCI_Fetch* renvoient true ou false.
Afin de tester les cas d'erreurs, avez-vous un conseil particulier?

Faire un OCI_GetLastError ?

D'avance merci.
Fly.
cobfly est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/03/2011, 11h18   #2
Rédacteur/Modérateur
 
Avatar de Vincent Rogier
 
vincent rogier
Inscription : juillet 2007
Messages : 2 355
Détails du profil
Informations personnelles :
Nom : vincent rogier
Âge : 34

Informations forums :
Inscription : juillet 2007
Messages : 2 355
Points : 3 108
Points : 3 108
Salut,

les méthodes OCI_FetchXXX() renvoient FALSE si :

- Il n'y a plus rien à fechter
- une erreur est survenue

OCILIB permet de gérer les erreurs :

- soit avec un error handler global
- soit avec OCI_GetLastError() (si OCI_ENV_CONTEXT est passé à OCI_Initialize())

Partant de la, cela dépend de l'application. Par exemple si tu code en C++, le mieux est d'utiliser un error handler global dans lequel tu déclenche une exception.
Si tu codes en C, l'utilisation de OCI_GetLastError() peut être intéressante mais tu dois alors vérifier OCI_GetLastError() à chaque retour de OCI_FetchXXX()...

Dans une même application tu peux faire les deux méthodes ou les alterner en fonction de la criticité des portions de codes...
__________________
Vincent Rogier.

Rubrique ORACLE : Accueil - Forum - Tutoriels - FAQ - Livres - Blog

Vous voulez contribuer à la rubrique Oracle ? Contactez la rubrique !

OCILIB (C Driver for Oracle)

Librairie C Open Source multi-plateformes pour accéder et manipuler des bases de données Oracle
Vincent Rogier est actuellement connecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/03/2011, 11h13   #3
Invité régulier
 
Inscription : juillet 2009
Messages : 41
Détails du profil
Informations forums :
Inscription : juillet 2009
Messages : 41
Points : 8
Points : 8
Bonjour,

Les devs sont en C, donc dans mon cas, il est assez difficile d'utiliser un handler global d'erreurs.

J'en arme un parfois lors du debugging ...

Je vais donc ajouter un test d'erreur systématique lors des fetchs.

Merci.
Fly
cobfly est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 20h10.


 
 
 
 
Partenaires

Hébergement Web