Provider pour accès aux bases access .accdb via ado
damedom41
Messages postés79Date d'inscriptionmercredi 14 avril 2010StatutMembreDernière intervention 2 août 2014
-
7 mars 2011 à 13:34
damedom41
Messages postés79Date d'inscriptionmercredi 14 avril 2010StatutMembreDernière intervention 2 août 2014
-
8 mars 2011 à 13:29
Bonjour,
J'ai développé un certain nombre d'applications en Access 2003, en utilisant la méthode DAO.
Je dois faire une migration vers ACCESS 2010, en utilisant la méthode ADO.
Pour accéder à des bases de type TOTO.MDB, j'utilise comme provider Microsoft.Jet.OLEDB.4.0, et j'ajoute la référence Microsoft ActiveX Data Objects 2.8 Library, et cela fonctionne.
En revanche, pas moyen d'accéder ainsi à des bases de type TOTO.accdb.
Pouvez-vous m'aider ?
damedom41
Messages postés79Date d'inscriptionmercredi 14 avril 2010StatutMembreDernière intervention 2 août 2014 8 mars 2011 à 12:14
Merci mille fois.
C'est vous qui êtes un
Ca marche super bien.
Pour information, on peut utiliser dans le même code les deux providers : un pour chaque type de base accédée.
Et c'est génial.
c148270
Messages postés303Date d'inscriptionmercredi 12 janvier 2005StatutMembreDernière intervention 3 octobre 20131 8 mars 2011 à 12:57
Oui on peut utiliser les deux mais il faut qualifier car les mêmes fonctions existent dans les deux.
Par exemple : recordset
Il faut donc definir DAO.recordset ou ADODB.recordset
De même si l'on utilise ADODB et ADOR la fonction recordset existe dans les deux
damedom41
Messages postés79Date d'inscriptionmercredi 14 avril 2010StatutMembreDernière intervention 2 août 2014 8 mars 2011 à 13:29
Il s'agissait pour moi d'utiliser ADO dans les deux cas, mais de pouvoir acceder à des bases de type mdb et des bases de type accdb.
Je n'ai testé pour l'instant que le movefirst, en déclarant les recordsets de la même manière, à savoir :
[i]dim dbrec as adodb.recordset
dim dbcnx as adodb.connection/i puis
ouverture de la base via dbcnx
[i]set dbrec as new adodb.recordset
dbrec.open ("select * from TABLE", dbcnx,,, adCmdTest)
dbrec.movefirst/i Evidemment le provider n'est pas le même pour les deux connexions.
J'enchaîne via un formulaire l'accès aux deux bases (mdb et accdb) , et ça marche.
Je vais dans les semaines qui viennent tester plus avant les différentes fonctionnalités, et poster les éventuels problèmes rencontrés (et peut-être même les solutions si je les trouve).