Connexion Visual Basic 6.0-MySQL.
Salut à vous chers développeurs. En fait, je suis sur un projet VB 6.0-MySQL et je voudrais connecter la base de données mysql à l'application VB. J'ai déjà téléchargé et installé le connecteur "mysql-connector-odbc-5.1.13-win32". J'ai même ajouté le pilote "MySQL ODBC 5.1 Driver" aux sources de données utilisateurs dans le panneau de configuration et la connexion a réussi. En VB, j'ai écrit un module permettant d'effectuer la connexion de VB à MySQL et quand j'exécute ça marche bien. Voici d'ailleurs le code de ce module:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
|
Dim con As ADODB.Connection
Dim server As String
Dim database As String
Dim user As String
Dim pwd As String
Dim msg As Integer
Public Sub Connexion()
Set con = New ADODB.Connection
server = "localhost"
database = "scolarite"
user = "root"
pwd = ""
On Error GoTo erreur
'con.CursorLocation = adUseServer
con.Open "DRIVER={MySQL ODBC 5.1 Driver};SERVER=" & server & ";DATABASE=" & database & ";USER=" & user & ";PASSWORD=" & pwd
msg = MsgBox("La connexion a réussi !", 0 + 64, "Connexion à la base de données")
Exit Sub
erreur: msg = MsgBox("Erreur: " & Err.Number & vbLf & vbLf & Err.Description & vbLf & vbLf & "Impossible d'établir la connexion !", 0 + 16, "Connexion à la base de données")
End Sub |
J'écris ensuite un module me permettant d'exécuter une requête SQL dont voici le code:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
|
Dim con As ADODB.Connection
Dim rs As ADODB.Recordset
Dim cmd As ADODB.Command
Dim password As String
Dim msg As Integer
Public Sub Insertion(requete As String)
'Set con = New ADODB.Connection
password = ""
con.Open "DRIVER={MySQL ODBC 5.1 Driver};SERVER=localhost;DATABASE=scolarite;USER=root;PASSWORD=" & pwd & ";OPTION=3;"
Set rs = New ADODB.Recordset
Set cmd = New ADODB.Command
'On Error GoTo erreur
cmd.CommandText = requete
Set rs = cmd.Execute '****
msg = MsgBox(rs.RecordCount & "ligne(s) insérée(s) !", 0 + 64, "Insertion de données dans la base de données")
con.Close
'Exit Sub
'erreur: msg = MsgBox("Erreur: " & Err.Number & vbLf & vbLf & Err.Description & vbLf & vbLf & "Erreur d'exécution de la requête !", 0 + 16, "Insertion de données dans la base de données")
End Sub |
Mais au moment de l'exécution de ce dernier module, j'obtiens l'erreur suivante: "Run-time error '3709': Impossible d'utiliser cette connexion pour effectuer cette opération. Elle est fermée ou non valide dans ce contexte."
L'erreur est signalée à la ligne '****.
Merci à vous de m'éclairer sur ce problème. A plus.