par , 14/09/2021 à 18h44 (1466 Affichages)
Tout a commencé par une banale connexion à une base SQL SERVER pour faire des requêtes. J'avais donc déclaré une chaîne de connexion comme suit :
Public Const ADODB_STRINGCNX = "Driver={SQL Server};SERVER=LeServer;DATABASE=LaBDD;Trusted_Connection=Yes;"
Ensuite j'ai créé une fonction pour lier les tables SQL Server avec bien sûr la commande DoCmd.TransferDatabase et toujours la même chaîne de connexion ADODB_STRINGCNX. Et c'est là que mon désarroi a commencé avec la fameuse erreur ISAM
![Nom : ISAMerror.jpg
Affichages : 162
Taille : 74,8 Ko](https://www.developpez.net/forums/attachment.php?attachmentid=604775&d=1631635489)
J'ai déclaré des chaines de connexion avec tous les drivers possibles mais sans succès
- Provider=sqloledb
- DRIVER={SQL Server Native Client 11.0}
- DRIVER={ODBC Driver 17 for SQL Server}
- Driver={SQL Server}
Alors en désespoir de cause, j'ai décidé de rajouter ODBC dans la chaîne de connexion uniquement pour DoCmd.TransferDatabase donc comme suit:
Public Const ADODB_STRINGCNX = "Driver=ODBC;{SQL Server};SERVER=LeServer;DATABASE=LaBDD;Trusted_Connection=Yes;"
Et là, les portes du Valhalla se sont ouvertes car l'erreur ISAM avait disparue !
Et n'oubliez jamais...Bonjour chez vous