我有一个SQL数据库,其中包含一个表“Employees”(包含大量行)。通过使用DataGridView,我想搜索特定的“员工姓名”并更改它的“工作”。我怎样才能做到这一点。我正在使用VB.net。请帮助我。
答案 0 :(得分:2)
不确定这是否会有所帮助,但是如果找到匹配则会写出一个遍历所有值的循环,如果不是,则为true,如果发现该项目可以显示在文本框中并进行编辑 如果没有显示消息说"找不到匹配"
编辑部分可以使用一个程序完成,该程序将使用输入的内容更新网格中的值
如果需要,我可以为此提供代码,但我不确定这是否是您所希望的 并且最有可能采用更好的方式
答案 1 :(得分:0)
您可以遍历网格,并使用For循环检查您要编辑的数据是否存在:
假设您使用文本框作为输入,并使用标签来保存员工ID:
Dim EmpIDColumn as Integer = 'array number of your EmpID Column
Dim EmpNameColumn as Integer = 'The array number of the column where your EmpName is
Dim JobColumn as Integer = 'The array number of your job column
For each dr as Datagridviewrow in Datagridview1.Rows
If dr.cells(EmpNameColumn).value = TxtSearchBox.text Then
txtEmpJob.text = dr.cells(JobColumn).value
lblEmpID.Text = dr.cells(EmpIDColumn).value
End if
Next
好的,所以您已成功搜索了该记录。下一步(在编辑作业之后,甚至其他细节如名称)将更新网格中的记录。还记得你在列中将lblEmpID的文本设置为empID吗?用它来找到 使用上述相同的技术记录您希望在网格中更改的内容!
Dim EmpIDColumn as Integer = 'array number of your EmpID Column
Dim EmpNameColumn as Integer = 'The array number of the column where your EmpName is
Dim JobColumn as Integer = 'The array number of your job column
For each dr as Datagridviewrow in Datagridview1.Rows
If dr.cells(EmpIDColumn).value = lblEmpID.text Then
dr.cells(JobColumn).value = txtEmpJob.text
dr.cells(EmpNameColumn).value = txtEmpName.text
'then, type in here your SQL Query Update!
End if
Next