建立从vba到(Google)Cloud SQL数据库的ADODB连接的正确方法是什么?

问题描述 投票:0回答:2

连接到Cloud SQL似乎不同于连接到普通的MySQL数据库。我已经在“公共IP地址”之后添加了“实例连接名称”,但是仍然出现“未知的MySQL服务器主机”错误。任何建议将不胜感激。谢谢!

Dim Cnn As Object
Set Cnn = CreateObject("ADODB.Connection")
Cnn.Open ("DRIVER={MySQL ODBC 5.3 Unicode Driver};SERVER=xxx.xxx.xxx.xxx\instanceConnectionName;DATABASE=databaseName" & ";USER=user;PASSWORD=abcd")

If Cnn.State = adStateOpen Then
    Debug.Print "Connection"
Else
    Debug.Print "No Connection"
End If
Cnn.Close
excel vba google-cloud-platform adodb
2个回答
0
投票

我建议使用SQL Proxy,然后进行连接就像数据库位于您的本地主机中。

因此步骤将是:

  • 在您的计算机上安装Cloud SQL代理
  • 启动云SQL代理
  • 当您连接到本地数据库时进行连接

代码为:

Dim Cnn As Object
Set Cnn = CreateObject("ADODB.Connection")
Cnn.Open ("DRIVER={MySQL ODBC 5.3 Unicode Driver};SERVER=172.0.0.1;DATABASE=<DATABASENAME>;USER=<USERNAME>;PASSWORD=<PASSWORD>)

If Cnn.State = adStateOpen Then
    Debug.Print "Connection"
Else
    Debug.Print "No Connection"
End If
Cnn.Close

0
投票

您连接到哪种数据库?您可以在这里找到各种连接字符串。

https://www.connectionstrings.com/

此外,请转到ODBC驱动程序,并查看已安装的内容。您的代码必须与您已安装的代码匹配。这是我在系统上拥有的图像。

enter image description here

因此,例如,您必须安装“ MySQL ODBC 5.3 Unicode驱动程序”,因为这就是您在代码中引用的内容。尝试一下并反馈您的发现和结果。

© www.soinside.com 2019 - 2024. All rights reserved.