Dépannage de la connexion VBA à la base de données MySQL dans Excel
La question se pose lorsque vous tentez de vous connecter à une base de données MySQL à l'aide de VBA dans Excel mais que vous rencontrez un erreur. Voici une enquête approfondie et une solution au problème basée sur l'extrait de code fourni.
Analyse du problème :
La ligne défaillante identifiée dans le code VBA est :
oConn.Open str
Cette ligne est chargée d'établir une connexion à la base de données MySQL à l'aide de la chaîne de connexion stockée dans la variable str. Une erreur se produit au cours de cette étape, empêchant l'établissement de la connexion.
Cause première et solution :
En comparant le code VBA fourni à la connexion PHP réussie, un élément crucial La différence devient apparente : l'inclusion du sous-programme CONNECTDB() dans le code VBA. Ce sous-programme est l'endroit où la connexion à la base de données doit être initialisée, comme le montre le code corrigé fourni dans la solution.
Le code VBA corrigé ci-dessous résout le problème et devrait réussir la connexion à la base de données 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
Le code mis à jour garantit que la connexion à la base de données MySQL est établie avant de tenter d'exécuter la requête SQL et de récupérer les données. En suivant ces étapes, vous devriez pouvoir vous connecter avec succès à votre base de données MySQL à l'aide de VBA dans Excel.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!