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