我现在用Google搜索了几个小时。
我读过无数文章,例如:Is there a Windows 7 ODBC driver for Access?
我尝试过使用ODBC管理员 - 并且已成功为两者添加系统DSN:
当我尝试连接到本地存储的Access DB时:
odbc_connect('Aquarius2', '', '');
我收到以下错误:
odbc_connect():SQL错误:[Microsoft] [ODBC驱动程序管理器]指定的DSN包含驱动程序和应用程序之间的体系结构不匹配,第3行的C:\ export \ export.php中的SQLConnect中的SQL状态IM014
简单脚本尝试安装最新的访问驱动程序 - Aquarius2
我的DSN名称仍然失败。
我没有想法 - 我错过了什么?
此致 亚历
答案 0 :(得分:18)
您正在尝试将64位应用程序与32位ODBC驱动程序一起使用,反之亦然。看看ODBC on 64-bit Windows Platforms。
您需要先确定您的PHP应用程序是64位还是32位。
然后,一旦确定需要启动正确的ODBC管理员 - 其中有2个,一个用于32位,一个用于64位。 64位ODBC管理员位于管理工具,控制面板中,32位的管理员位于%windir\syswow64\odbcad32.exe
。
将应用程序体系结构与正确的ODBC管理员匹配后,需要创建系统DSN。如果在管理员中找不到MS Access驱动程序,则需要为该体系结构下载一个。我不确定是否有64位MS Access ODBC驱动程序;如果没有,您将不得不更改您的应用程序架构。
The article I referenced有更多信息。
答案 1 :(得分:4)
另一个注意事项:如果您安装了64位WampServer,它会安装64位的所有东西 - Apache,MySQL,PHP。如果你想要一个32位的PHP,请转到PHP downloads page并选择一个'win32'版本。并且不要忘记在运行应用程序时更改php路径!这个加上设置了32位ODBC管理员 - %windir\syswow64\odbcad32.exe
- 你应该好好去。