在 Excel 中对 VBA 与 MySQL 数据库的连接进行故障排除
尝试在 Excel 中使用 VBA 连接到 MySQL 数据库但遇到错误。以下是根据提供的代码片段对该问题进行的深入调查和解决方案。
问题分析:
VBA 代码中识别出的错误行是:
oConn.Open str
该行负责使用存储在 str 变量中的连接字符串建立与 MySQL 数据库的连接。在此步骤中发生错误,导致无法建立连接。
根本原因和解决方案:
将提供的 VBA 代码与成功的 PHP 连接进行比较,其中一个关键点差异变得明显:VBA 代码中包含 CONNECTDB() 子例程。此子例程是应初始化与数据库的连接的位置,如解决方案中提供的更正代码所示。
下面更正的 VBA 代码解决了该问题,并且应成功连接到 MySQL 数据库:
Private Sub ConnectDB() Set oConn = New ADODB.Connection Dim str As String str = "DRIVER={MySQL ODBC 5.2.2 Driver};" & _ "SERVER=sql100.xtreemhost.com;" & _ "PORT=3306" & _ "DATABASE=xth_9595110_MyNotes;" & _ "UID=xth_9595110;" & _ "PWD=myPassword;" & _ "Option=3" oConn.Open str End Sub Private Sub InsertData() Dim rs As ADODB.Recordset Set rs = New ADODB.Recordset ConnectDB sql = "SELECT * FROM ComputingNotesTable" rs.Open sql, oConn, adOpenDynamic, adLockOptimistic Do Until rs.EOF Range("A1").Select ActiveCell = rs.Fields("Headings") rs.MoveNext Loop rs.Close oConn.Close Set oConn = Nothing Set rs = Nothing End Sub
更新后的代码可确保在尝试执行 SQL 查询和检索数据之前建立与 MySQL 数据库的连接。通过执行这些步骤,您应该能够在 Excel 中使用 VBA 成功连接到 MySQL 数据库。
以上是为什么我在 Excel 中与 MySQL 数据库的 VBA 连接失败以及如何修复?的详细内容。更多信息请关注PHP中文网其他相关文章!