我想在txtlname.textbox中加载一些数据,这取决于我的textbox1.text,或者如果我按下txtlname的按钮将加载,具体取决于我在textbox1中输入的内容。
Private Sub Button2_Click(ByVal sender As System.Object,
ByVal e As System.EventArgs) Handles Button2.Click
disconnect()
connect()
Try
da = New Odbc.OdbcDataAdapter("Select distinct lname FROM tblemployee WHERE emp_id ='" & Trim(TextBox1.Text.TrimEnd()) & "'", con)
dr = cmd.ExecuteReader
If dr.Read Then
txtlname.Text = dr("lname").ToString
txtlname.Refresh()
End If
Catch ex As Exception
Debug.WriteLine("Plz log in again" & ex.Message)
End Try
End Sub
End Class
答案 0 :(得分:1)
首先,我会更改您的查询以使用参数化命令
da = New Odbc.OdbcDataAdapter("Select distinct lname FROM tblemployee WHERE emp_id =?", con)
da.SelectCommand.Parameters.AddWithValue("@p1", TextBox1.Text.Trim())
dr = cmd.ExecuteReader
If dr.Read Then
txtlname.Text = dr("lname").ToString
txtlname.Refresh()
Else
MessageBox.Show("No record found!")
End If
然后,我添加了一条消息,以防dr.Read
返回false。 (没有与where条件匹配的记录)
至少你会知道文本框是否仍然空白的原因很简单。
最后一点。如果emp_id
是表tblEmployee
中的数字字段,则传递给SelectCommand
参数集合的值应该转换为整数,因为它是作为字符串传递的,这可能是是失踪结果的来源。