DetailPage-MSS-KB

Base de connaissances

Numéro d'article: 238401 - Dernière mise à jour: mardi 10 mai 2011 - Version: 4.0

Ancien nº de publication de cet article : F238401

Symptômes

Si vous essayez d'accéder à une base de données Access 2000 ou Access 2002, vous pouvez rencontrer l'une des erreurs suivantes dans votre programme Visual Basic.

Si vous utilisez ADO (Microsoft ActiveX Data Objects) (ou le contrôle de données ADO), le message d'erreur suivant s'affiche :
Erreur d'exécution -2147467259 Format de base de données XXX inconnu
Si vous utilisez DAO (Data Access Objects) (ou le contrôle de données générique DAO), le message d'erreur suivant s'affiche :
Erreur d'exécution 3343 Format de base de données XXX inconnu

Cause

Access 2000 et Access 2002 utilisent le moteur Jet 4.0, qui crée des fichiers de base de données au format Jet 4.0. Les composants Jet 3.5 ne reconnaissent pas ce type de format.
  • Si vous utilisez ADO, vous obtenez l'erreur -2147467259 lorsque vous essayez de vous connecter à votre base de données Access 2000 ou 2002 via le fournisseur Microsoft.Jet.OLEDB.3.51.
  • Si vous utilisez DAO, vous obtenez l'erreur 3343 lorsque vous utilisez la bibliothèque d'objets Microsoft DAO 3.51.
  • Le contrôle générique DAO ne fonctionne pas avec les bases de données Access 2000 ou 2002 et génère toujours l'erreur 3343 sauf s'il est utilisé comme indiqué dans la section « Résolution » de cet article. Ce problème se produit car ce contrôle est basé sur Jet 3.51 et reconnaît uniquement des formats de base de données Jet 3.51 (ou antérieurs).

Résolution

Pour résoudre ce problème, appliquez l'une des méthodes suivantes :
  • Installez Visual Studio Service Pack 4 ou version ultérieure. (Si vous utilisez le contrôle de données, modifiez sa propriété Connect en Access 2000.)
  • Pour ADO (ou le contrôle de données ADO), utilisez le fournisseur Microsoft.Jet.OLEDB.4.0.
  • Pour DAO, ajoutez une référence à la bibliothèque d'objets Microsoft DAO 3.6.
  • Si vous utilisez le contrôle de données générique, vous devez ouvrir un jeu d'enregistrements DAO 3.6, puis l'assigner en tant que source du contrôle de données comme suit :
    Option Explicit
    Private daoDB36 As Database
    Private rs As DAO.Recordset
    Dim sPath As String
    
    Private Sub Form_Load()
    sPath = _
    "C:\Program Files\Microsoft Office\Office\Samples\Northwind.mdb"
    Set daoDB36 = DBEngine(0).OpenDatabase(sPath)
    Set rs = daoDB36.OpenRecordset("Customers")
    Set Data1.Recordset = rs
    End Sub
    					
  • Ce problème a été corrigé par Visual Basic Service Pack 4. Une nouvelle valeur (Access 2000) a été ajoutée pour la propriété Connect qui permettra au contrôle de données DAO d'ouvrir des bases de données Access 2000.

Statut

Ce problème a été corrigé en premier dans Visual Studio 6.0 Service Pack 4.Pour plus d'informations sur les Service Packs Visual Studio, cliquez sur les numéros ci-dessous pour afficher les articles correspondants dans la Base de connaissances Microsoft.
194022  (http://support.microsoft.com/kb/194022/EN-US/ ) INFO : Service Packs pour Visual Studio 6.0, quoi, où et pourquoi

194295  (http://support.microsoft.com/kb/194295/ ) COMMENT FAIRE : Savoir si un Service Pack Visual Studio est installé
Pour télécharger le Service Pack Visual Studio le plus récent, reportez-vous au site Web de Microsoft à l'adresse suivante (en anglais) :
http://msdn2.microsoft.com/en-us/vstudio/Aa718353.aspx (http://msdn2.microsoft.com/en-us/vstudio/Aa718353.aspx)

Références

Pour plus d'informations sur Jet 4.0, reportez-vous à la documentation Access 2000.

Pour plus d'informations sur ADO et DAO, reportez-vous à la documentation Visual Basic.

Pour plus d'informations, recherchez « Format de base de données inconnu » dans MSDN Library fourni avec Visual Basic.

Les informations contenues dans cet article s'appliquent au(x) produit(s) suivant(s):
  • Microsoft Visual Basic 5.0 Édition professionnelle
  • Microsoft Visual Basic 6.0 Édition professionnelle
  • Microsoft Visual Basic 5.0 Édition Entreprise
  • Microsoft Access 2000 Standard Edition
  • Microsoft Access 2002
  • Microsoft Data Access Components 2.5
  • Microsoft Data Access Components 2.6
Mots-clés : 
kbctrl kbjet kbprb kbtophit KB238401
L'INFORMATION CONTENUE DANS CE DOCUMENT EST FOURNIE PAR MICROSOFT SANS GARANTIE D'AUCUNE SORTE, EXPLICITE OU IMPLICITE. L'UTILISATEUR ASSUME LE RISQUE DE L'UTILISATION DU CONTENU DE CE DOCUMENT. CE DOCUMENT NE PEUT ETRE REVENDU OU CEDE EN ECHANGE D'UN QUELCONQUE PROFIT.
Partager
Options de support supplémentaire
Forums du support Microsoft Community
Nous contacter directement
Trouver un partenaire Microsoft Certified Partner
Microsoft Store