无法从不同地区的工作站连接到MySQL服务器

我有一个从MySQL服务器获取信息的macros。 这个macros是从不同地区的不同工作站访问的。 当我从我的电脑(工作站A)运行它,它完美的作品。 但是,我们在其他地区(工作站B)设置新的计算机,这里给我一个连接string问题。

工作站B的设置方式与工作站A的设置方式相同。 使用相同的Windows版本(64位)和相同的Excel版本(32位)。 两个工作站都安装了MySQL驱动程序和ODBC连接器,但仍然存在Workstation B连接问题。

这是我正在使用的MySQL连接string:

Driver={MySQL ODBC 5.3 ANSI Driver};Server=server.name.com;Port=3306;Database=db;User=macro;Password=********; 

这是发生错误的时刻:

 Set oConn = CreateObject("ADODB.Connection") On Error GoTo Error_Handler1 oConn.Open strConn On Error GoTo 0 

我得到的错误是:

运行时错误“-2147457259(800004005)由于系统错误126,指定的驱动程序无法加载:无法find指定的模块。 (MySQL OBDC 5.3 ANSI驱动程序,C:\ Program Files(x86)\ MySQL \ Connector ODBC 5.3 \ myodbc5a.dll

这是我在Workstation A中使用的连接string,它正在工作。

但是,我使用ODBC数据源pipe理器中的这些参数来testing连接,它工作得很好。 连接是完美的。

你们知道一个原因,为什么这不能为一些电脑在相同的configuration下工作,而其他人不是?

我会高度赞赏人们可能有的任何想法 – 谢谢。

看看这个部分,我复制你的MySQL代码Port=3306Database=db你忘了添加; 它们之间。 我认为这是错误的原因

也可以根据这里的链接添加VBA运行时错误'-2147467259(80004005)

根据需要安装的参考是正确的32位还是64位?

感谢你们。 经过我与IT经理之间的大量沟通之后,我们同意问题出在32B与64B的MySQL版本上。 工作站B有一个64B操作系统,但32B Office Package。

我的build议是安装两个MySQL驱动程序,32B和64B。 这解决了我的问题。

有关更多有价值的信息请按照这篇文章: excel vba mysql ado连接