我有一个从MySQL服务器中提取信息的宏。此宏可从不同区域的不同工作站访问。当我从我的计算机(工作站A)运行它是完美的。但是,我们在其他地区(工作站B)安装了新的计算机,这里给我一个连接字符串问题。
工作站B的设置方式与A工作站的设置方式相同。使用相同的Windows版本(64位)和相同的Excel版本(32位)。这两个工作站都安装了MySQL驱动程序和ODBC连接器,但工作站B仍然存在连接问题。
这是我使用的MySQL连接字符串:
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我得到的错误是:
由于系统错误126,无法加载运行时错误'-2147457259 (800004005)指定的驱动程序:找不到指定的模块。(MySQL OBDC5.3 ANSI驱动程序,C:\Program (x86)\MySQL\Connector 5.3\myodbc5a.dll )
这与我在工作站A中使用的连接字符串相同,而且正在工作。
但是,我使用来自ODBC数据源管理器的这些参数来测试我的连接,它工作得很好。连接是完美的。
你们知道为什么在同一配置下某些计算机不能工作,而另一些则不行吗?
我非常感谢人们的任何想法--谢谢。
发布于 2016-12-21 00:08:39
看看我在您的MySQL代码Port=3306Database=db中复制的这个部分,您忘了在它们之间添加;。我认为这是错误的原因。
并在这里添加基于链接的VBA Run-time error '-2147467259 (80004005)
所安装的引用是正确的32位还是64位?
发布于 2016-12-21 14:32:35
谢谢你们。在我和我的IT经理进行了大量的交流之后,我们一致认为问题是在用于MySQL的版本中,32B和64B。工作站B有64B操作系统,但32B Office包。
我的建议是安装两个MySQL驱动程序,32B和64B。解决了我的问题。
要获得更多有价值的信息,请访问以下文章:excel vba mysql ado connection
https://stackoverflow.com/questions/41251654
复制相似问题