oxbowmaster
Messages postés4Date d'inscriptionmardi 2 septembre 2003StatutMembreDernière intervention30 juin 2005
-
29 déc. 2004 à 17:32
madbob
Messages postés285Date d'inscriptiondimanche 14 décembre 2003StatutMembreDernière intervention13 mars 2012
-
4 janv. 2005 à 12:56
Bonjour à tous,
je voudrais savoir si quelqu'un peut m'expliquer pour quoi je n'arrive pas à récupérer la valeur des champs par un recordset, dans une appli vba et sur une base oracle 8i.
La connection à la base se fait bien, les appels de requêtes ne plantent pas mais mes recorset sont vides.
oxbowmaster
Messages postés4Date d'inscriptionmardi 2 septembre 2003StatutMembreDernière intervention30 juin 2005 4 janv. 2005 à 12:36
Merci pour tes réponses, mais j'ai enfin trouvé mon problème:
ce qui ce passait, c'est que lorsque j'exécutais mes scripts d'insert dans la base, je ne faisais pas de COMMIT en fin de script.
Donc, je pensais que tout était passé mais en fait c'était seuleument en temporaire et ca n'apparaissait pas dans mes tables.
donc ne pas oublié les COMMIT.........................
ps: j'avais prévenu, j'y connais pas grand chose à oracle,
et encore merci....
madbob
Messages postés285Date d'inscriptiondimanche 14 décembre 2003StatutMembreDernière intervention13 mars 2012 29 déc. 2004 à 20:40
Quand tu dis que tu n'arrive pas à récupérer les valeurs des champs par un recordset...
J'ai jamais eu de pb avec Oracle si ce n'est sur la déclaration des types et des formats.
As tu attaché une table pour verifier...que tu accedes bien aux données.
As tu une gestion d'erreur qui empêcherait l'affichage d'une erreur sql ?
As tu choisi le bon pilote ODBC
Difficile de t'en dire plus compt tenu de tes explications.
Elimines l'impossible et la vérité, même absurde, verra le jour
Sir Arthur Conan Doyle
madbob
madbob
Messages postés285Date d'inscriptiondimanche 14 décembre 2003StatutMembreDernière intervention13 mars 2012 30 déc. 2004 à 10:28
J'ai extrapolé que tu utilisais Access (vba)...et dans Access tu attaches les tables (en lecture ecriture) en fonction des droits.
Remarque si vous avez access, c'est peut être une solution simple pour faire ta mise à jour de base à base...Tu l'utilises comme interface tu attaches les tables de la base1 et de la base 2 et tu faits les mises à jour par un des requete de mise à jour.
A priori vous avez les pilotes ODBC qui vont bien.
Une application vba peut utiliser et forcer la gestion des erreurs. En principe un programme sort de son traitement ou est redirigé vers le traitement d'une erreur.
Exple :
on error resume next... on error go to
Si ta requete ne ramène rien tu vas avoir une erreur 3065 ou un sql 100 sous oracle. Si tu pratiques dans ton code VBA le on error resume next, tu passera sur l'erreur sans la voir et ton recordset resterai vide. c'est ce que j'ai voulu dire par gestion des erreurs
As-tu Essayé d'instancier un recordset sur un select simple ?
As-tu essaye de récupérer l'erreur (y en a peut être pas) au différentes étape de construction de l'instenciation jusqu'aux fetch :
msgbox err.number &"#"& err.description.
madbo
Vous n’avez pas trouvé la réponse que vous recherchez ?