Vraag & Antwoord

Programmeren

Mysql fout in visual basic

Anoniem
None
4 antwoorden
  • Hi allemaal
    Ik ben een form aan het maken voor het veranderen van je wachtwoord, maar ik kom er niet helemaal uit.
    Ik krijg deze melding
    [img:cbcb17d2df]http://img838.imageshack.us/img838/5527/errorax.jpg[/img:cbcb17d2df]
    En deze mysql (en vb) code gebruik ik.
    \/ Hieronder de code
    [code:1:cbcb17d2df]conn = New MySqlConnection()
    conn.ConnectionString = "server=database; user id=****; password=password; database=game"

    Try
    conn.Open()
    Catch myerror As MySqlException
    MsgBox(myerror.Message)
    End Try

    Try
    Dim myAdapter As New MySqlDataAdapter

    Dim sqlquery = "Update Users SET password='" + MaskedTextBox2.Text + "WHERE username='" + My.Settings.username + "'"

    Dim myCommand As New MySqlCommand()
    myCommand.Connection = conn
    myCommand.CommandText = sqlquery
    'start query
    myAdapter.SelectCommand = myCommand
    Dim myData As MySqlDataReader
    myData = myCommand.ExecuteReader()

    conn.Close()


    Catch ex As Exception
    MsgBox(ex.Message)
    End Try[/code:1:cbcb17d2df]

    Weet iemand wat ik fout doe?
    Alvast heel erg bedankt

    Groetjes

    Daan :wink:
  • De fout zit je in je query, je vergeet een ' tussen password= en WHERE


    [code:1:72526ca5b1]
    Dit:
    "Update Users SET password='" + MaskedTextBox2.Text + "WHERE username='" + My.Settings.username + "'"

    Moet dit worden
    "Update Users SET password='" + MaskedTextBox2.Text + "' WHERE username='" + My.Settings.username + "'"
    [/code:1:72526ca5b1]

    als je de query in actie zou zien, dan ziet er het zo uit
    [code:1:72526ca5b1]
    "Update Users SET password='mijnwachtwoordWHERE username='piet'"

    terwijl het dit moet zijn:

    "Update Users SET password='mijnwachtwoord' WHERE username='piet'"
    [/code:1:72526ca5b1]

    Je ook gebruik maken van deze methode: String.Format. Je code zou er dan zo uit zien

    [code:1:72526ca5b1]
    Dim sqlquery = String.Format("Update Users SET password='{0}' WHERE username='{1}' ", MaskedTextBox2.Text,My.Settings.username)
    [/code:1:72526ca5b1]

    Succes!
  • Dankje voor de uitleg.
    Hierdoor kom ik een stuk verder

    [img:81514071d6]http://3.bp.blogspot.com/_0xChS0Qu7mM/S_qLLGC6ouI/AAAAAAAAAnU/aIZ2udbXLJo/s1600/thanks.jpg[/img:81514071d6]
  • graag gedaan :)

Beantwoord deze vraag

Dit is een gearchiveerde pagina. Antwoorden is niet meer mogelijk.