我没有得到这个代码在窗体2正确的结果:SELECT * FROM表,其中列Like语句C#
conn.Open();
OleDbCommand cmd = new OleDbCommand("Select * From udbTable Where Username Like '" + f1.textBox1.Text + "%'", conn);
OleDbDataReader reader = cmd.ExecuteReader();
while (reader.Read())
{
label5.Text = reader["Username"].ToString();
}
conn.Close();
我在表中3点样品的数据,但我总是得到相同的结果这是数据库的第一个条目。无论何时我输入the textbox1.Text
中的最后一个条目或第二个条目,我仍然会得到第一个条目。
textbox1.Text
是从Form1,我把它的属性Modification
设置为Public
。 label5.text
是输出。
什么是字符串连接后发送给服务器的完整的查询?您应该使用参数化查询来避免SQL注入。 –
@MartinSmith你的意思是像Feras的答案吗?我已经尝试过了。 – Rom
没有那个答案不起作用。在将值分配给参数之前,需要将百分比添加到值中。您仍然没有回答发送给服务器的查询。如果文本框的值为空白,只需保留通配符,就会看到您描述的结果。 –