Op deze website gebruiken we cookies om content en advertenties te personaliseren, om functies voor social media te bieden en om ons websiteverkeer te analyseren. Ook delen we informatie over uw gebruik van onze site met onze partners voor social media, adverteren en analyse. Deze partners kunnen deze gegevens combineren met andere informatie die u aan ze heeft verstrekt of die ze hebben verzameld op basis van uw gebruik van hun services. Meer informatie.

Akkoord

Vraag & Antwoord

Programmeren

Mysql fout in visual basic

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.