我正在尝试在本地计算机上的Excel和服务器上的MySQL数据库之间建立ADO连接。
我看到的示例(例如这里和这里)中有一个形式为MySQL ODBC 5.x Driver
的驱动程序。似乎在安装最新的mysql 连接器/odbc下载(32位,与我的msexcel匹配)之后,相关的注册表驱动程序文件HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBCINST.INI\ODBC Driver\
现在被命名为“SQL Server”和“SQL Server Native Client 11.0”。但是我无法使用这两个驱动程序成功地建立到MySQL的连接。
我的VBA代码
Sub connect()
Dim Password As String
Dim SQLStr As String
Dim Server_Name As String
Dim User_ID As String
Dim Database_Name As String
Set rs = CreateObject("ADODB.Recordset") 'EBGen-Daily
Server_Name = "184.154.225.243"
Database_Name = "*******" ' Name of database
User_ID = "********" 'id user or username
Password = "*******" 'Password
Port = "3306"
SQLStr = "SELECT * FROM *******"
Set Cn = CreateObject("ADODB.Connection")
Cn.Open "Driver={SQL Server};Server=" & _
Server_Name & ";Port=" & Port & ";Database=" & Database_Name & _
";Uid=" & User_ID & ";Pwd=" & Password & ";"
rs.Open SQLStr, Cn, adOpenStatic
在运行以上命令时,我收到了错误信息
[Microsoft][ODBC SQL Server Drive][DBNETLIB]SQL Server does not exist or access denied
。对于“本机客户端11.0”驱动程序的错误是Could not open a connection to SQL Server[53]
。我已经在MySQL workbench中测试了连接参数,一切都正常。发生了什么?