[英]how to display value in msg from database in vb.net
如何在vb.net的數據庫中的消息框中顯示值? 我需要幫助
如果我在文本框中輸入錯誤的值,我想顯示值,然后消息框顯示數據庫中的原始值。
Dim cmdAB As String
Dim daAB As SqlClient.SqlDataAdapter
Dim dsAB As DataSet
Dim dtAB As DataTable
cmdAB = "SELECT * FROM English_Test WHERE school_code= '" & school_code & "' and child_id= '" & child_id & "' and english_1= '" & English_1TextBox.Text & "'"
daAB = New SqlClient.SqlDataAdapter(cmdAB, cnn)
dtAB = New DataTable()
dsAB = New DataSet()
daAB.Fill(dsAB, "English_Test")
dtAB = dsAB.Tables("English_Test")
If (dtAB.Rows.Count > 0) Then
English_2TextBox.Focus()
Else
MessageBox.Show("English 1: " & dtAB.Rows(0).Item("english_1") & " not found.", "" & Name & " - Not Found", MessageBoxButtons.OK, MessageBoxIcon.Warning)
English_1TextBox.Enabled = True
English_1TextBox.Text = Nothing
English_1TextBox.Focus()
End If
通過這種使用參數的方式,以及using ... EndUsing塊,即使出現錯誤,也可以確保關閉並正確放置對象。
Private Sub CheckOriginalData()
Dim Name As String = ""
Dim school_code As String = ""
Dim child_id As String = ""
Dim dtAB As New DataTable
Using cn As New SqlConnection("Your connection string")
Dim cmdAB As String = "SELECT * FROM English_Test WHERE school_code= @SchoolCode and child_id= @ChildID and english_1= @English1;"
Using cmd As New SqlCommand(cmdAB, cn)
cmd.Parameters.Add("@SchoolCode", SqlDbType.VarChar).Value = school_code
cmd.Parameters.Add("@ChildID", SqlDbType.VarChar).Value = child_id
cmd.Parameters.Add("@English1", SqlDbType.VarChar).Value = English_1TextBox.Text
cn.Open()
Using dr As SqlDataReader = cmd.ExecuteReader
dtAB.Load(dr)
End Using
End Using
End Using
If (dtAB.Rows.Count > 0) Then
English_2TextBox.Focus()
Else
MessageBox.Show("English 1: " & English_1TextBox.Text & " not found.", Name & " - Not Found", MessageBoxButtons.OK, MessageBoxIcon.Warning)
English_1TextBox.Enabled = True
English_1TextBox.Text = Nothing
English_1TextBox.Focus()
End If
End Sub
最后,你的問題。 如果您的數據表沒有行,那么引用行和列以獲取值將無法解決。 您提供了該值,但它仍在文本框中而不在數據庫中。 記住,沒有找到。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.