Ik ben maar beginneling en zit met een, voor mij, onoplosbaar probleem:
Hierbij een gedeelte van de code:
Visual Basic Code:
Private Sub lsbTabel_Click(sender As Object, e As EventArgs) Handles lsbTabel.Click txbSqlString.Text = "" ' bepalen welke naam dient gezocht te worden, die wordt opgeslagen in strMijnKeuze ' enkel ter controle of de juiste gegevens worden ingelezen Dim strMijnKeuze As String strMijnKeuze = lsbTabel.SelectedItem txbMijnKeuze.Text = strMijnKeuze 'zoeken van de naam in de datareader en de lijn inlezen 'Dim drMijnRij As DataRow 'openen van de connectie conn.Open() 'zoeken van de rij 'opbouwen sqlcommand Dim sqlMijnRij As String = "SELECT " _ & "L_nr, L_naam, L_Adres, L_Postnr, L_gemeente " _ & "FROM " _ & "tblLeerling " _ & "WHERE " _ & "L_Naam = strMijnKeuze" txbSqlString.Text = sqlMijnRij ' bepalen OledbCommand Dim cmdMijnRij As New OleDbCommand(sqlMijnRij, conn) ' ' bepalen reader Dim drMijnKeuze As OleDbDataReader drMijnKeuze = cmdMijnRij.ExecuteReader 'sluiten van de connectie 'conn.Close() ' Initialiseren van de listbox lsbTabel.Text = "" 'Uitlezen van de gegevens Do While drMijnKeuze.Read 'zolang het einde van de datareader niet bereikt is de gegevens wegschrijven. ' Als de datareader op het einde komt wordt er een False (-1) doorgegeven. lsbTabel.Items.Add(drMijnKeuze("L_Naam")) Loop conn.Close() End Sub
Ik krijg telkens een foutmelding:
System.Data.OleDb.OleDbException: 'Waarden voor een of meer vereiste parameters ontbreken.'
Ondertussen weet ik dat de fout veroorzaakt wordt bij het doorgeven in de WHERE-clausule, waar het de bedoeling is dat de waarde van strMijnKeuze wordt doorgegeven. Ik heb het geprobeerd met "L_Naam = @strMijnKeuze", en op allerelii andere manieren, maar geen oplossing. Bij doorgeven van "L_Naam = 'strMijnKeuze'" wordt natuurlijk gezocht op de waarde 'strMijnKeuze', maar niet op de inhoud. Kan iemand mij verder helpen?
Alvast bedankt,
Zwozwedra