我正在尝试使用 VBA 从位于服务器上的本地计算机连接到 MySQL。最初我收到以下错误。
[Microsoft][ODBC Driver Manager] 未找到数据源名称且未指定默认驱动程序。
经过一番研究,我发现应该先安装 MySQL ODBC 驱动程序。我从以下位置安装了驱动程序。
http://dev.mysql.com/downloads/connector/odbc/
我有一台 64 位机器,所以我安装了 64 位驱动程序并尝试建立连接。即使那样,我也收到相同的数据源名称未找到错误。但是,从 ODBC 数据源管理员那里,如果我选择系统 DSN,我可以看到安装的 MySQL 驱动程序,并且我可以在服务器中为我的数据库创建一个新的数据源。
但是,从 VBA 中,如果我调用数据源,我会收到另一个错误。
[Microsoft][ODBC Driver Manager] 指定的 DSN 包含驱动程序和应用程序之间的体系结构不匹配。
这就是我从 VBA 调用数据源的方式。
Dim oConn As ADODB.Connection
Set oConn = New ADODB.Connection
oConn.Open "data_source_name"
此外,对于 64 位 ODBC 连接器,我可以在我的系统 DSN 中看到如下两个驱动程序。
- MySQL ODBC 5.2 ANSI 驱动程序
- MySQL ODBC 5.2 Unicode 驱动程序
对于这两个驱动程序,我从 ODBC 数据管理员那里连接成功。
我试图找出架构不匹配问题的解决方案,如果我通过在 64 位机器上从以下位置运行 ODBC 应用程序来创建 DSN,它可能会起作用。
C:\Windows\System32\odbcad32
但是对于这种情况,我也收到了相同的架构不匹配错误。
我什至尝试在我的机器上安装 MySQL Connector/ODBC 5.2.5 32 位。对于这种情况,我无法看到系统 DSN 中列出的驱动程序。
有人可以帮我弄清楚实际上做错了什么吗?