|
|
|
|
Quand on essaie d'ouvrir une base de données ACCESS 2000 avec VB6 on a le message format non reconnu n° d'erreur 3343, j'ai été obligé de la convertir en ACCESS 97 pour pouvoir l'utiliser. J'ai pensé que VB6 datant de 1997 et ACCESS 2000 datant de 2000 en principe cela s'expliquait et que dans un service pack il y aurait la solution. Mais ni le sercice pack3, ni le pack4 ne résolvent le problème. |
Je pense que tu as inséré un contrôle Data dans ton application ce qui t'as permis d'accéder à ta base Access. Or, le contrôle Data fourni avec VB6 utilise la bibliothèque Microsoft DAO 3.51 (ce qui correspond à Access 97).
|
Heu, ça fait longtemps que j'ai pas fait ça, mais je me souviens d'un problème similaire. En gros c'était une histoire de version de drivers.
dim cn As ADODB.Connection Set cn = New ADODB.Connection cn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=uneBDD.mdb" etc. etc. Alors c'est pas forcement la même syntaxe avec DAO, mais l'idée est là, j'espère que ça vous donera une bonne piste ;) |
Exemple:
dim cnx as ADODB.connection
dim rst as ADODB.recordset
sub form_load()
set cnx=new ADODB.connection
cn.Open "Driver={Microsoft Access Driver (*.mdb)};Dbq=" + App.Path + "\db1.mdb;"
If cnx.State = adStateOpen Then
Set rst = New ADODB.Recordset
rst.Open "select champ1 from table1", cnx
text1.text=""
While Not rst.EOF
text1.text=text1.text+Str(rst.Fields(0).Value)+vbcrlf
rst.MoveNext
Wend
rst.Close
Set rst = Nothing
cnx.close
end if
set cnx=nothing
end sub
L'erreur est humaine mais un véritable désastre
ne peut être qu'informatique.
|