13 votes

PHP ODBC connect() to Access - incompatibilité d'architecture

Cela fait des heures que je cherche sur Google.

J'ai lu d'innombrables articles tels que Existe-t-il un pilote ODBC Windows 7 pour Access ?

J'ai essayé d'utiliser l'administrateur ODBC et j'ai réussi à ajouter un DSN système pour les deux :

  • Base de données Microsoft Access
  • Base de données Microsoft do Access

Lorsque j'essaie de me connecter à une base de données Access stockée localement :

odbc_connect('Aquarius2', '', '');

J'obtiens l'erreur (les erreurs) suivante(s) :

odbc_connect() : SQL error : [Microsoft][ODBC Driver Manager] Le DSN spécifié contient une erreur d'architecture entre le pilote et l'application, SQL state IM014 in SQLConnect in C:\export\export.php à la ligne 3

Simple script a essayé d'installer les derniers pilotes d'accès - Aquarius2 est le nom de mon DSN échoue toujours.

Je suis à court d'idées - que me manque-t-il ?

Voir aussi, Alex

20voto

bohica Points 3653

Vous essayez d'utiliser une application 64 bits avec un pilote ODBC 32 bits ou vice versa. Regardez ODBC sur les plates-formes Windows 64 bits .

Vous devez d'abord déterminer si votre application PHP est de type 64 bits ou 32 bits.

Une fois que vous vous en êtes assuré, vous devez lancer le bon administrateur ODBC - il y en a deux, un pour 32 bits et un pour 64 bits. L'administrateur ODBC 64 bits se trouve dans Outils administratifs, Panneau de configuration et l'administrateur 32 bits dans %windir\syswow64\odbcad32.exe .

Une fois que vous avez fait correspondre l'architecture de votre application à l'administrateur ODBC approprié, vous devez créer le DSN système. Si vous ne trouvez pas le pilote MS Access dans l'administrateur, vous devrez en télécharger un pour cette architecture. Je ne sais pas s'il existe un pilote ODBC MS Access 64 bits ; si ce n'est pas le cas, vous devrez modifier l'architecture de votre application.

L'article auquel je fais référence pour plus d'informations.

4voto

sagesmondo Points 41

Une autre remarque : si vous avez installé le WampServer 64-bit, il installe tout en 64-bit - Apache, MySQL, PHP. Si vous voulez avoir un PHP 32 bits, allez dans la section Page de téléchargement PHP et choisissez l'une des versions "win32". Et n'oubliez pas de modifier le chemin d'accès à php lorsque vous lancez votre application ! Ceci en plus de la configuration de l'administrateur ODBC 32-bit - %windir\syswow64\odbcad32.exe - et vous devriez être prêt à partir.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X