首頁  >  文章  >  資料庫  >  為什麼我的 VBA 程式碼無法連接到 MySQL 資料庫以及如何修復它?

為什麼我的 VBA 程式碼無法連接到 MySQL 資料庫以及如何修復它?

Barbara Streisand
Barbara Streisand原創
2024-10-29 04:46:29569瀏覽

Why Is My VBA Code Failing to Connect to My MySQL Database and How Can I Fix It?

使用 VBA 將 Excel 連接到 MySQL 資料庫

使用 VBA 從 Excel 連接到 MySQL 資料庫可能具有挑戰性,特別是當標準連接方法無法運作時。了解遇到的具體錯誤對於找到解決方案至關重要。

在提供的程式碼中,連接錯誤很可能是由於錯誤使用 New 關鍵字引起的。要建立連接,您應該建立 ADODB.Connection 物件的實例,而不使用 New。因此,修正後的程式碼應該是:

<code class="vba">Dim oConn As ADODB.Connection
Private Sub ConnectDB()
Set oConn = CreateObject("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"
''' error '''
oConn.Open str
End Sub</code>

此外,請注意,用於將資料庫中的資料插入 Excel 的程式碼也略有不正確。 InsertData 子程式的修正版本為:

<code class="vba">Private Sub InsertData()
Dim rs As ADODB.Recordset
Set rs = CreateObject("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 rs = Nothing
End Sub</code>

為了進行比較,這裡有一個成功連接到MySQL 伺服器的PHP 程式碼範例:

<code class="php">$connect = mysql_connect("sql100.xtreemhost.com","xth_9595110","myPassword") or die(mysql_error());
mysql_select_db("myTable",$connect);</code>

依照這些修改後的程式碼,您應該能夠建立與MySQL 資料庫的連接,並使用VBA 在Excel 中與其資料進行互動。

以上是為什麼我的 VBA 程式碼無法連接到 MySQL 資料庫以及如何修復它?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn