Как заполнить текстовое поле в winforms с помощью access database in VB.NET при изменении выбора combobox
я новичок в этом деле. vb.net и я пытаюсь заполнить текстовые поля в моей winform данными из базы данных access о выборе значения в combobox. но это ошибка, которую я получаю.
нет значения для одного или нескольких обязательных параметров.
Что я уже пробовал:
Private Sub employeenamecmbbx_SelectedIndexChanged(sender As Object, e As EventArgs) Handles employeenamecmbbx.SelectedIndexChanged Try con = New OleDbConnection(cs) con.Open() Dim ct As String = "select allowances,basicsalary,cashbenefits,vehiclefueldriver,vehiclefuel,fuelonly,vehicleonly," & "accomodationfurnishing,accomodationonly,furnishingonly,sharedaccomodation,marriageresponsibilities,disabled," & "oldage,tier3contribution,lifeinsurance,childeducation,agedependency,trainingcost,ssn,NoOfDependants,nochildren," & "BankName,AccountName,BankBranch,AccountNo," & "from employeeregistration where employeename = ?" cmd = New OleDbCommand(ct) cmd.Connection = con cmd.Parameters.Add(New OleDbParameter("employeename", OleDbType.VarChar, 30)) cmd.Parameters("employeename").Value = Trim(employeenamecmbbx.Text) Console.WriteLine("sql:" & cmd.CommandText) rdr = cmd.ExecuteReader() If rdr.Read Then Allowances.Text = Trim(rdr.GetValue(0).ToString()) BasicSalary.Text = Trim(rdr.GetString(1)) CashBenefits.Text = Trim(rdr.GetValue(2).ToString()) vfd.Text = Trim(rdr.GetValue(2).ToString()) vf.Text = Trim(rdr.GetValue(3).ToString()) vonl.Text = Trim(rdr.GetValue(4).ToString()) feun.Text = Trim(rdr.GetValue(5).ToString()) accwf.Text = Trim(rdr.GetValue(6).ToString()) accon.Text = Trim(rdr.GetValue(7).ToString()) furon.Text = Trim(rdr.GetValue(8).ToString()) shracc.Text = Trim(rdr.GetValue(9).ToString()) maresp.Text = Trim(rdr.GetValue(10).ToString()) disbl.Text = Trim(rdr.GetValue(11).ToString()) olda.Text = Trim(rdr.GetValue(12).ToString()) t3c.Text = Trim(rdr.GetValue(13).ToString()) lifins.Text = Trim(rdr.GetValue(14).ToString()) chedu.Text = Trim(rdr.GetValue(15).ToString()) agdep.Text = Trim(rdr.GetValue(16).ToString()) trncst.Text = Trim(rdr.GetValue(17).ToString()) ssno.Text = Trim(rdr.GetValue(18).ToString()) Nodependents.Text = Trim(rdr.GetValue(19).ToString()) NoChildren.Text = Trim(rdr.GetValue(20).ToString()) bntnmtxbx.Text = Trim(rdr.GetValue(21).ToString()) actntxbx.Text = Trim(rdr.GetValue(22).ToString()) brncnamtxbx.Text = Trim(rdr.GetValue(23).ToString()) accnmtxbx.Text = Trim(rdr.GetValue(24).ToString()) End If If Not rdr Is Nothing Then rdr.Close() End If
Richard MacCutchan
Я не думаю, что между ними должна быть запятая. AccountNo
и from
в вашей инструкции Select. Кроме того, вероятно, было бы проще просто сказать Select * from ...
.