Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim SQLData As New System.Data.SqlClient.SqlConnection("Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\Database.mdf;Integrated Security=True;User Instance=True")
Dim cmdSelect As New System.Data.SqlClient.SqlCommand("SELECT COUNT(*) FROM Table1 WHERE Name =" + TextBox1.Text + " And Last = '" + TextBox2.Text + "'", SQLData)
SQLData.Open()
If cmdSelect.ExecuteScalar > 0 Then
Label1.Text = "Record Found ! " & TextBox1.Text & " " & TextBox2.Text
Return
End If
Label1.Text = "Record Not Found ! "
SQLData.Close()
End Sub
我写这段代码来查找在textbox1和textbox2中输入的记录是否存在..如果记录存在..那么在label1中文本将是RECORD FOUND否则NO RECORD FOUND
错误:
* *当我输入textbox1和textbox2然后点击按钮点击事件时,它会显示错误: 列名无效, **
答案 0 :(得分:4)
请使用SqlCommand.Parameters
收藏。请!!为了更好的编程。
Dim cmdSelect As New System.Data.SqlClient.SqlCommand(
"SELECT COUNT(*) FROM Table1 WHERE Name = @Name And Last = @Last", SQLData)
cmdSelect.Parameters.AddWithValue("@Name",TextBox1.Text)
cmdSelect.Parameters.AddWithValue("@Last",TextBox2.Text)
答案 1 :(得分:0)
TextBox1.Text
应在单引号('
)内传递。
除此之外,它似乎是另一个Little Bobby Tables案例。
答案 2 :(得分:0)
您需要在Textbox1.text值
周围添加'
e.g
'" + TextBox1.Text + "'
答案 3 :(得分:0)
你应该不这样做,因为这是为sql注入打开的。除此之外,我认为您在'
周围的查询中遗漏了一些TextBox1.Text
。