mySQL ODBC 在windows 64位版上的驱动问题

1,问题的起源

某次编辑一个asp文件,其中访问mysql数据库的链接字符串以下:html

"driver={mysql odbc 3.51 driver};server=localhost;uid=root;pwd=sa;database=server;Stmt=Set Names 'GBK'"mysql

在运行时。sql

Microsoft OLE DB Provider for ODBC Drivers '80004005'

[Microsoft][ODBC 驱动程序管理器] 未发现数据源名称而且未指定默认驱动程序

\mysqlconn.asp, line 30

 

看来系统不存在mysql odbc 3.51的驱动,想起来我电脑安装了mysql-connector-odbc-5.1.6-win32.msi,那么驱动应该是5.1.6?数据库

改成"driver={mysql odbc 5.1.6 driver};server=localhost;uid=root;pwd=sa;database=server;Stmt=Set Names 'GBK'"windows

故障依旧。ide

 

那多是驱动版本有误。既然安装了mysql-connector-odbc-5.1.6-win32.msi,在windows的ODBC数据源管理界面总能找到版本号吧。ui

因而在windows控制面板上找到ODBC配置图标,打开却发现没有mySQL的驱动。spa

 

2,问题分析

因而在网上查找缘由,其中如下文章指出了问题所在。code

https://jingyan.baidu.com/article/5d368d1ecef5cb3f60c057de.htmlserver

该文特别提到:

必定要到这个路径下打开数据源c:\windows\syswow64\odbcad32.exe,控制面板里打开的是64位的ODBC管理器,创建的也是调用64为驱动的数据源,32为的应用将没法使用64为的数据源。

个人机器是win64的系统,显然应该使用64为ODBC管理程序打开。

3,问题解决

因而运行c:\windows\syswow64\odbcad32.exe,终于出现mySQL ODBC驱动,且版本为5.1

 

修改asp文件的链接字符串为

"driver={mysql odbc 5.1 driver};server=localhost;uid=root;pwd=sa;database=server;Stmt=Set Names 'GBK'"

再次运行程序,正确无误。问题解决。

相关文章
相关标签/搜索