我几天来一直在努力解决这个问题.任何帮助非常感谢.
尝试使用Excel VBA连接到MySQL数据库,在具有以下内容的PC上:
Excel 2007
Windows 7 x64家庭高级版
MySQL 5.5
MySQL ODBC Connector 5.1,64位
在Excel VBA中,我引用了Microsoft ActiveX Objects 2.8 Library.
我用来连接的VBA是:
Dim oConn As ADODB.Connection
Public Sub ConnectDB()
Set oConn = New ADODB.Connection
oConn.Open "DRIVER={MySQL ODBC 5.1 Driver};" & "SERVER=localhost;" & "DATABASE=test;" & "USER=root;" & "PASSWORD=PWhere;" & "Option=3"
End Sub
每次运行时我都会收到错误对话框:“[Microsoft] [ODBC驱动程序管理器]未找到数据源名称且未指定默认驱动程序”
MySQL服务肯定在运行.
我使用Windows数据源管理器检查MySQL ODBC连接器5.1是否存在并且正确:当我尝试以这种方式创建DSN时检查确定.
通过VBA项目参考选项,我注意到引用大量不同ADO库的选项,包括(多维)选项和库版本2.0,2.1,2.5,2.6,2.7和6.0 – 可能答案在于其中之一?
需要更多详细信息,请告诉我.
解决方法:
您需要使用32位或64位版本,具体取决于Excel的版本,而不是Windows.所以即使你运行Windows 7 64位,我相信Excel 2007只有32位,所以你需要使用32位mysql连接器.
另请参阅此bug report与您的问题类似.