Как получить значение из таблицы Microsoft SQL Server 2008 в форму Windows TextBox:

Я делаю проект в VB.NET. У меня есть форма, в которой есть 3 текстовых поля и командная кнопка.

Когда я ввожу значение в TextBox1 (который является регистрационным номером пациента) и нажимает на кнопку Command (SearchButton), он должен искать значение из моей таблицы SQL Server и давать результаты в TextBox2 и TextBox3 (который является именем и Возраст пациента).

Это то, что я сделал, но он не работает.

Dim cn As New SqlConnection cn.ConnectionString = "Data source=localhost\SQLEXPRESS;Initial Catalog=hms;Integrated Security=True" cn.Open() Dim cm As New SqlCommand cm.CommandText = "SELECT Patient_Name,Age FROM Patient_Prescrib" cm.Connection = cn Dim dr As SqlDataReader dr = cm.ExecuteReader If dr.HasRows Then dr.Read() ' TextBox1.Text = dr.Item("Reg_No") TextBox3.Text = dr.Item("Patient_Name") TextBox4.Text = dr.Item("Age") dr.Close() End If cn.Close()
1 ответ

@SoftwareCarpenter, @D_Bester, @rheitzman Спасибо. Это то, что я сделал и понял. :)

Private Sub DetailsButton_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles DetailsButton.Click Try Dim con As SqlConnection = New SqlConnection con.ConnectionString = "Data source=localhost\SQLEXPRESS;Initial Catalog=hms;Integrated Security=True" con.Open() Dim dt As New DataTable Dim ds As New DataSet ds.Tables.Add(dt) Dim da As New SqlDataAdapter da = New SqlDataAdapter("SELECT * from Patient_Prescrib WHERE Reg_No LIKE '%" & TextBox1.Text & "%'", con) da.Fill(dt) For Each DataRow In dt.Rows If TextBox1.Text = dt.Rows(0)("Reg_No").ToString Then TextBox2.Text = dt.Rows(0)("Patient_Name").ToString TextBox3.Text = dt.Rows(0)("Patient_Con").ToString MessageBox.Show("Patient details added!") Return End If Next con.Open() Return con.Close() Catch ex As Exception MessageBox.Show(" a run time error has occured. Please make sure you have provided the reg no for search") End Try
End Sub

licensed under cc by-sa 3.0 with attribution.