Summary: l'erreur d'exécution Access 3146 - Échec de la connexion ODBC.se produit lorsque le code VBA est utilisé pour accéder à la base de données externe dans Microsoft Access. Elle se produit généralement lorsque la connexion ODBC échoue en raison de requêtes incorrectes, d'une corruption du fichier de base de données ou d'une autre raison. Ce blog examine les causes possibles de l'erreur d'exécution 3146 dans Access et les méthodes de dépannage pour y remédier. Vous découvrirez également un outil de réparation avancé pour Access qui peut vous aider à réparer le fichier de base de données corrompu rapidement et facilement.
De nombreux utilisateurs d’Access utilisent le protocole ODBC pour connecter des sources de données à MS Access. La source de données contient des fichiers, des feuilles de calcul et des informations de connexion à la base de données. Pour connecter une source de données à Access, le nom de la source de données (DSN) et le pilote ODBC doivent être définis. Access ne dispose pas de pilotes intégrés pour se connecter à d’autres bases de données externes telles que Oracle, SQL Server, MySQL Server, etc. Pour cela, vous devez installer un pilote ODBC compatible avec votre système.
S’il y a un problème avec le pilote ODBC ou si la connexion ODBC ne peut pas se connecter à une source de données, l’erreur d’exécution 3146 “ODBC Call Failed” peut se produire dans MS Access. L’erreur peut également se produire si vous définissez la source de données directement avec le gestionnaire de pilote ODBC via un code VBA. Elle se produit généralement si vous utilisez une requête incorrecte pour transmettre la chaîne de connexion ou s’il y a d’autres problèmes de code.
Scénarios fréquents d’erreurs d’exécution de MS Access 3146
Voici quelques scénarios courants dans lesquels vous pouvez rencontrer l’erreur “ODBC Call Failed” (échec de la connexion ODBC) :
- Lorsque vous essayez d’ouvrir un tableau dans la base de données Access pour modifier un registre.
- Si vous essayez de connecter Microsoft Access au serveur SQL via le pilote ODBC.
- Si vous essayez d’ouvrir le fichier de la base de données Access sur un réseau partagé.
- Si vous essayez d’importer des données SQL Server dans Microsoft Access via une connexion ODBC.
Causes de l’erreur « « Échec de la connexion ODBC » ” dans Access
L’erreur ODBC échec de la connexion indique un problème de connexion ODBC dans la base de données Access. Par ailleurs, plusieurs raisons peuvent être à l’origine d’un tel problème. En voici quelques-unes :
- Le pilote ODBC (gestionnaire de sources de données ODBC) n’est pas compatible avec la version d’Access.
- Fichier source de données corrompu
- Vous ne disposez pas des autorisations nécessaires pour accéder à la source de données
- Problème de connexion au réseau
- Configuration incorrecte de la source de données dans l’administrateur de la source de données ODBC
- Le fichier de la base de données Access est corrompu
- Le pilote ODBC n’est pas installé correctement
- Des chemins d’accès incorrects au réseau commun peuvent entraîner des incohérences.
- Option désactivée “Connection pooling
- Le pare-feu de Windows bloque la connexion entre MS Access et la source de données externe.
- DSN (nom de la source de données) non défini ou erroné
- Informations d’identification ODBC incorrectes
Méthodes de dépannage pour corriger l’erreur “ Échec de la connexion ODBC ” dans Access
Vous pouvez recevoir le message d’erreur Échec de la connexion ODBC si votre base de données Access ne dispose pas des autorisations suffisantes pour utiliser le protocole ODBC. Assurez-vous d’abord que la base de données souhaitée dispose de toutes les autorisations nécessaires pour effectuer certaines actions via la connexion ODBC. Si ce n’est pas le cas, essayez les méthodes suivantes pour résoudre l’erreur.
Méthode 1 : Vérifier le code VBA
L’erreur d’exécution MS Access 3146 – ODBC call failed peut se produire s’il y a un problème avec le code VBA que vous utilisez pour interagir avec la source de données externe via une connexion ODBC. L’erreur se produit généralement lors de la définition d’un nom de source de données (DSN) avec une chaîne de connexion. Elle peut se produire lorsque la chaîne de connexion dans le code VBA ne correspond pas à la configuration de la source de données externe. Pour y remédier, vérifiez et corrigez les problèmes dans le code. Voici la marche à suivre :
- Ouvrez la base de données Access, allez dans Outils de base de données et cliquez sur l’onglet Visual Basic.
- L’éditeur Microsoft Visual Basic for Application s’affiche.
Vérifiez le code VBA et procédez comme suit pour résoudre le problème dans le code :
- Veillez à utiliser la syntaxe correcte pour la chaîne de connexion.
- Vérifier le nom des objets.
- Vérifier la syntaxe, les références et les requêtes dans le code.
Méthode 2 : Vérifier les informations d’identification ODBC
L’erreur Access Échec de la connexion ODBCpeut se produire lorsque Access ne peut pas authentifier le DSN (Data Source Name). Cela se produit lorsque la connexion ODBC échoue en raison d’informations d’identification incorrectes ou non concordantes. Vous pouvez vérifier et modifier les informations d’identification ODBC pour résoudre le problème. Voici la marche à suivre :
- Ouvrez la base de données Access, cliquez sur Données externes et sélectionnez Base de données ODBC.
- La fenêtre Récupérer des données externes – Base de données ODBC s’affiche. Cliquez sur “Lier à la source de données en créant une table liée”.
- Dans la fenêtre Sélectionner une source de données, sélectionnez Source de données machine et cliquez sur l’option Nouveau.
- Dans la boîte de dialogue Créer une nouvelle source de données, cliquez sur SQL Server et sélectionnez ensuite Next.
- Cliquez ensuite sur l’option Finish.
- Dans la fenêtre Créer une nouvelle source de données vers SQL Server, vérifiez les informations d’identification et sélectionnez Next.
Vérifiez si l’erreur 3146 a été corrigée. Si ce n’est pas le cas, vérifiez la configuration de la base de données de la connexion ODBC.
Méthode 3 : Vérification de la connexion ODBC Configuration de la base de données
L’erreur Access Échec de la connexion ODBC peut également se produire si la connexion ODBC n’est pas configurée correctement ou en cas de problèmes suivants :
- Vous utilisez un pilote ODBC incompatible.
- Le fichier DSN est corrompu.
- Le DSN n’est pas configuré correctement.
- Le DSN n’est pas référencé à la bonne base de données (lors de l’utilisation d’une chaîne de connexion dans VBA).
Pour résoudre ce problème, installez un pilote ODBC compatible et recréez le fichier DSN.
Méthode 4 : Vérification de la configuration du réseau
L’erreur Échec de la connexion ODBC peut se produire lorsque la connexion entre MS Access et la source de données externe a échoué lors de l’utilisation du protocole ODBC. Ce problème est généralement dû à des paramètres incorrects du pare-feu, du logiciel antivirus ou des paramètres réseau. Vous pouvez désactiver temporairement le pare-feu et l’antivirus pour résoudre le problème. Vous pouvez également vérifier la connexion TCP active et d’autres informations relatives au réseau à l’aide de l’Invite de commande. Voici la marche à suivre :
- Tapez cmd dans le champ de recherche du système et appuyez sur la touche Entrée.
- Dans la fenêtre d’invite, tapez netstat -n -a.
Les informations sur le réseau s’affichent, y compris l’adresse IP, les numéros de port, TCP, les noms de domaine pleinement qualifiés, les ports surveillés, les protocoles, etc. Vérifiez les informations relatives au réseau. Si vous avez trouvé un problème, reconfigurez les paramètres de configuration du réseau ou contactez votre équipe informatique.
Méthode 5 : Activer les paramètres de mise en commun dans l’administrateur de la source de données ODBC
L’option “Connection Pooling” du pilote ODBC garantit les connexions aux bases de données. Si l’option de mise en commun est désactivée, le message d’erreur “ODBC connection failed” (échec de la connexion ODBC) peut apparaître. Vous pouvez ouvrir l’Administrateur de sources de données ODBC pour vérifier et activer la mise en commun des connexions. Pour ce faire, suivez les étapes ci-dessous :
- Ouvrez le panneau de contrôle.
- Double-cliquez sur l’option Outils d’administration dans la fenêtre du panneau de configuration.
- Dans la fenêtre d’administration, recherchez la source de données ODBC (64 bits) et double-cliquez dessus.
- La fenêtre ODBC Data Source Administrator s’affiche. Allez à l’option Connection Pooling et sélectionnez l’option “Enable ODBC connection Pooling PerfMon counters for troubleshooting” (Activer les compteurs PerfMon de la connexion ODBC pour le dépannage).
- Cliquez sur OK.
Dans la fenêtre ODBC Data Source Administrator, vous pouvez également vérifier les paramètres des onglets Driver, User DSN, System DSN et Driver et vous assurer qu’ils sont corrects.
Méthode 6 : Utiliser des protocoles de suivi
L’option de traçage ODBC fournit un journal détaillé des traces de communication entre MS Access et d’autres sources de données externes. Lorsque l’option de traçage est activée dans le pilote, vous pouvez utiliser ces journaux détaillés pour déterminer la cause du problème de connexion ODBC et le résoudre. Vous pouvez ouvrir l’Administrateur de sources de données ODBC et cliquer sur l’option Traçage pour afficher le journal des appels du pilote ODBC.
Méthode 7 : Réparation de la base de données Access
L’erreur d’échec de la connexion ODBC d’Access peut également se produire en raison d’objets, de requêtes, de tables ou d’index de base de données corrompus. Les dommages causés au fichier de la base de données Access peuvent entraîner des incohérences et affecter la connexion ODBC. Vous pouvez réparer votre base de données Access en utilisant l’utilitaire Compress and Repair intégré à Access. Voici les étapes à suivre pour utiliser cet utilitaire :
- Ouvrez la base de données Access souhaitée.
- Naviguez jusqu’au fichier et cliquez sur l’option Info.
- Cliquez sur l’option Compacter et réparer la base de données.
- Accédez à l’emplacement d’origine de la base de données pour afficher la base de données réparée.
Si, pour une raison quelconque, l’utilitaire Compact and Repair n’est pas en mesure de réparer le fichier de base de données, optez pour un outil de réparation Access professionnel. Stellar Repair for Access estun outil puissant qui peut réparer les fichiers de base de données Access (.ACCDB/.MDB) gravement endommagés ou corrompus. Vous pouvez télécharger la version de démonstration du logiciel qui vous permet d’analyser le fichier endommagé et de prévisualiser toutes les données récupérables. L’outil est compatible avec toutes les éditions de Windows, y compris Windows 11.
À la fin
L’erreur d’exécution 3146 peut se produire dans MS Access lorsque la connexion au protocole ODBC a échoué. Essayez les méthodes de dépannage mentionnées dans cet article pour résoudre le problème. Si le problème s’est produit en raison d’une base de données corrompue, alors vous pouvez utiliser Stellar Repair for Access pour réparer la base de données avec une intégrité de 100 %. L’outil est compatible avec toutes les versions de MS Access, y compris MS Access 2019. Téléchargez la version de démonstration du logiciel pour vérifier ses fonctionnalités avant de l’acheter.