Das Herstellen einer Verbindung mit einer MySQL-Datenbank aus Excel mithilfe von VBA kann eine Herausforderung sein, insbesondere wenn die Standardverbindungsmethoden nicht funktionieren . Um eine Lösung zu finden, ist es wichtig, den konkreten aufgetretenen Fehler zu verstehen.
Im bereitgestellten Code wird der Verbindungsfehler höchstwahrscheinlich durch die falsche Verwendung des Schlüsselworts „New“ verursacht. Um die Verbindung herzustellen, sollten Sie eine Instanz des ADODB.Connection-Objekts erstellen, ohne New zu verwenden. Daher sollte der korrigierte Code wie folgt lauten:
<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>
Beachten Sie außerdem, dass die Codes, die zum Einfügen von Daten aus der Datenbank in Excel verwendet werden, ebenfalls leicht falsch sind. Die korrigierte Version der InsertData-Subroutine lautet:
<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>
Zum Vergleich ist hier ein Beispiel für PHP-Code, der erfolgreich eine Verbindung zu einem MySQL-Server herstellt:
<code class="php">$connect = mysql_connect("sql100.xtreemhost.com","xth_9595110","myPassword") or die(mysql_error()); mysql_select_db("myTable",$connect);</code>
Durch Befolgen dieser geänderten Codes, Sie sollten in der Lage sein, eine Verbindung zu Ihrer MySQL-Datenbank herzustellen und mithilfe von VBA in Excel mit deren Daten zu interagieren.
Das obige ist der detaillierte Inhalt vonWarum kann mein VBA-Code keine Verbindung zu meiner MySQL-Datenbank herstellen und wie kann ich das Problem beheben?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!