Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Access 2003 et DAO

4 réponses
Avatar
Michel JAPIOT
Bonjour à tous,

Un client à moi souhaite que nous passions d'ACCESS 2000 à ACCESS 2003
(application VB6).

Nous n'y arrivons pas... peut être parce qu'on utilise toujours DAO, les
objets DATA et RECORDSET, qui sont pourtant super pratiques.

Qu'en pensez vous ? est ce compatible ??

Amicalemernt, avec tous mes remerciements.

Michel

4 réponses

Avatar
jean-marc
"Michel JAPIOT" wrote in message
news:%
Bonjour à tous,

Un client à moi souhaite que nous passions d'ACCESS 2000 à ACCESS 2003
(application VB6).

Nous n'y arrivons pas... peut être parce qu'on utilise toujours DAO, les
objets DATA et RECORDSET, qui sont pourtant super pratiques.

Qu'en pensez vous ? est ce compatible ??

Amicalemernt, avec tous mes remerciements.



Bonjour,

DAO en lui même supporte les bases Access 2003.
Il suffit d'ajouter au projet une référence à
Microsoft DAO 3.6 Object Library et le tour est joué.

On peut alors manipuler la base dans le code en écrivant des choses
comme ceci:

Dim db As Database
Dim rs As Recordset


Set db = OpenDatabase("truc2003.mdb")

If Not db Is Nothing Then
Set rs = db.OpenRecordset("Table1")

etc.

MAIS, et c'est le problème, le Contrôle DATA lui
ne supporte pas Access 2003. C'est un problème si l'application
utilise ce controle comme RecordSource d'autres objets
graphiques comme des TextBox, etc.

Je ne connais pas d'alternative viable permettant simplement
de remplacer l'objet DATA en utilisant DAO.

Pour tout ce qui est requête et autres, pas de soucis, comme
vu dans mon exemple précédent.

En revanche, on peut continuer à utiliser DAO sans le contrôle
Data. Le prix à payer est la réécriture de pas mal de code pour
refaire manuellement les liaisons avec les objets graphiques,
si il y en a. Rien d'impossible, mais potentiellement couteux
en temps de développement, le tout étant bien sur fonction de
la nature de l'application et de l'ampleur des changements.

Cordialement,

--
Jean-marc Noury (jean_marc_n2)
Microsoft MVP - Visual Basic
FAQ VB: http://faq.vb.free.fr/
mailto: remove '_no_spam_' ;
Avatar
andre.araste
Bonjour

Si vous utilisez un modèle objet DAO, il faut définir la propriété connect
du contrôle Data. C'est le moteur Jet 4.0 qui doit accepter les versions
récentes d'Access.

Sinon il faut utiliser ADO et adodc
--
Bonne réception.

http://perso.orange.fr/andre.araste/
Membre du Club Win's: http://www.clubwins.org
Avertissement: Je ne vends rien.

"Michel JAPIOT" a écrit dans le message de news:
%
Bonjour à tous,

Un client à moi souhaite que nous passions d'ACCESS 2000 à ACCESS 2003
(application VB6).

Nous n'y arrivons pas... peut être parce qu'on utilise toujours DAO, les
objets DATA et RECORDSET, qui sont pourtant super pratiques.

Qu'en pensez vous ? est ce compatible ??

Amicalemernt, avec tous mes remerciements.

Michel



Avatar
jean-marc
"Michel JAPIOT" wrote in message
news:%
Bonjour à tous,

Un client à moi souhaite que nous passions d'ACCESS 2000 à ACCESS 2003
(application VB6).

Nous n'y arrivons pas... peut être parce qu'on utilise toujours DAO, les
objets DATA et RECORDSET, qui sont pourtant super pratiques.

Qu'en pensez vous ? est ce compatible ??



Re Hello,

en fait il existe une solution pour pouvoir quand même utiliser
le Control Data.

Le principe :
- Ajouter au projet une référence à Microsoft DAO 3.6
- Puis, il n'est plus possible d'attacher directement la
base au controle Data, mais il est possible de lui
attacher un RecordSet

Finalement, le code devient qq chose comme cela:

Private Sub Form_Load()

Dim db As Database
Dim rs As Recordset


Set db = OpenDatabase("c:test_access2003.mdb")
Set rs = db.OpenRecordset("Table1")

Set Data1.Recordset = rs

End Sub


Et à partir de la, plus rien ne change dans ton programme.

Cordialement,

--
Jean-marc Noury (jean_marc_n2)
Microsoft MVP - Visual Basic
FAQ VB: http://faq.vb.free.fr/
mailto: remove '_no_spam_' ;
Avatar
msnews.microsoft.com
Bonsoir,

Merci à tous les 2 pour vos éclairages, je vais tester tout ça !!

Cordialement,

Michel


"Michel JAPIOT" a écrit dans le message de news:
%
Bonjour à tous,

Un client à moi souhaite que nous passions d'ACCESS 2000 à ACCESS 2003
(application VB6).

Nous n'y arrivons pas... peut être parce qu'on utilise toujours DAO, les
objets DATA et RECORDSET, qui sont pourtant super pratiques.

Qu'en pensez vous ? est ce compatible ??

Amicalemernt, avec tous mes remerciements.

Michel