Visual Basic 2008 et MySQL

[Résolu]
Signaler
Messages postés
9
Date d'inscription
dimanche 31 août 2008
Statut
Membre
Dernière intervention
21 septembre 2008
-
Messages postés
14
Date d'inscription
samedi 19 décembre 2009
Statut
Membre
Dernière intervention
14 mars 2011
-
Bien le bonjour amis développeurs :)

Ben voilà j'ai un petit problème, je voudrai (pour le moment) qu'un simple bouton puisse faire un INSERT INTO dans une base de données MySQL 5
J'ai donc l'action suivante sur mon bouton :

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

        Dim ConnnectionStr = "Database=visual;Data Source=localhost;User Id=root;Password=RootPass"
        Dim Connection = New MySqlConnection
        Connection.ConnectionString = ConnnectionStr

        Dim MyAdapter = New MySqlDataAdapter

        Connection.Open()
        Dim MySQLCmd = "INSERT INTO `visual`.`test` (`user` ,`pass` ,`function`)VALUES (        'Max', 'pass', 'pro');"

        MyAdapter.InsertCommand = New MySqlCommand(MySQLCmd, Connection)
        Label1.Text = "ok"

    End Sub

Y'a pas de balise code ici ?
Bref, mon problème, c'est que je n'ai aucune erreur (nan c'est pas ça le bug ^^) mais que malgré l'absence d'érreur, je n'ai aucune action réelle dans la base de données, on pourrait croire que la requête se fait, mais non...

Pourriez vous me dire où j'ai fait une erreur SVP ?
Je n'ai que 16 ans, je ne code que depuis un ans en Visual Basic...

Pour information, j'utilise Microsoft Visual Studio 2008 (Trial ) et AppServ qui me sert de Apache + PHP + MySQL :p

Merci d'avance pour votre aide :)

IGalaxy

6 réponses

Messages postés
7741
Date d'inscription
mercredi 1 septembre 2004
Statut
Membre
Dernière intervention
24 septembre 2014
41
Ouh là, oui effectivement, j'aurais du le voir.

Meis ta requette ne renvoie aucun résultat, il n'est pas utilise de faire un ExecuteReader en chargean un datareader, tu peux te contenter dans le cas présent d'un ExecuteNonQuery

---- Sevyc64  (alias Casy) ----<hr size="2" width="100%" /># LE PARTAGE EST NOTRE FORCE #    http://aide-office-vba.monforum.com/index.php
Messages postés
7741
Date d'inscription
mercredi 1 septembre 2004
Statut
Membre
Dernière intervention
24 septembre 2014
41
MySqlConnection, MySqlDataAdapter sont des classes qui existent en VB2008 ou ces des déclarations à toi ???
(Ca n'existe pas en VB2005)

Pour ton problème, essaye, dans ta requette INSERT d'enlever les ' entourant visual et test ainsi que user, pass et function.

Normalement (tout au moins sous SQLServer) les nom de tables ou de champs ne sont pas entourés de ' ou de "

---- Sevyc64  (alias Casy) ----<hr size="2" width="100%" /># LE PARTAGE EST NOTRE FORCE #    http://aide-office-vba.monforum.com/index.php
Messages postés
9
Date d'inscription
dimanche 31 août 2008
Statut
Membre
Dernière intervention
21 septembre 2008

J'utilise MySQL Connector en adaptant du code, manifestement du C...
http://morpheus.developpez.com/MySQLDotNet/

J'essaie de suite ce que tu dis :)
Merci
Messages postés
9
Date d'inscription
dimanche 31 août 2008
Statut
Membre
Dernière intervention
21 septembre 2008

On peut pas non plus éditer ? :S
J'ai tenté avec :
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

        Dim ConnnectionStr = "Database=visual;Data Source=localhost;User Id=root;Password=STARGATE"
        Dim Connection = New MySqlConnection
        Connection.ConnectionString = ConnnectionStr

        Dim MyAdapter = New MySqlDataAdapter

        Connection.Open()
        Dim MySQLCmd = "INSERT INTO visual.test (`user` ,`pass` ,`function`)VALUES (        'Max', 'pass', 'pro');"

        MyAdapter.InsertCommand = New MySqlCommand(MySQLCmd, Connection)
        Label1.Text = "ok"

    End Sub

Idem
Messages postés
9
Date d'inscription
dimanche 31 août 2008
Statut
Membre
Dernière intervention
21 septembre 2008

J'ai trouvé!

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

        Dim SQL As String
        Dim MyCommand As New MySqlCommand
        Dim MyDataReader As MySqlDataReader

        Dim ConnnectionStr = "Database=visual;Data Source=localhost;User Id=root;Password=RootPass"
        Dim Connection = New MySqlConnection
        Connection.ConnectionString = ConnnectionStr

        Dim MyAdapter = New MySqlDataAdapter

        Connection.Open()
        'Dim MySQLCmd = "INSERT INTO visual.test (`user` ,`pass` ,`function`)VALUES (        'Max', 'pass', 'pro');"
        'attache la varibale MyCommand à notre connexion
        MyCommand.Connection = Connection
        'création de la requête        SQL "INSERT INTO `test` SET `user` ""max"", `pass` = ""toto"", `function` = ""babacool"";"
        'execute la requete SQL
        MyCommand.CommandText = SQL
        'récupère les données de la requête
        MyDataReader = MyCommand.ExecuteReader

        'MyAdapter.InsertCommand = New MySqlCommand(MySQLCmd, Connection)
        Label1.Text = "ok"

    End Sub

Merci de votre aide :D
Messages postés
14
Date d'inscription
samedi 19 décembre 2009
Statut
Membre
Dernière intervention
14 mars 2011

Salut frere
ok j ai le meme proble que toi ...........
s'il te plait a tus trouver une solution a ce probleme ?
ok aide moi si tu peux
j arrive a me connecter mais je n ai rien dans ma base .
Merci d avance et que dieu te benisse