首頁 > 資料庫 > mysql教程 > 為什麼我在 Excel 中與 MySQL 資料庫的 VBA 連線失敗以及如何修復?

為什麼我在 Excel 中與 MySQL 資料庫的 VBA 連線失敗以及如何修復?

Susan Sarandon
發布: 2024-10-31 15:30:14
原創
187 人瀏覽過

Why Is My VBA Connection to MySQL Database in Excel Failing and How Do I Fix It?

在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中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板