SQL请求.使用文本框
本文关键字:文本 请求 SQL | 更新日期: 2023-09-27 17:49:30
请求无效。有什么问题吗?在此之前,他通过CommandText编写,所有工作都很顺利。
代码: private void buttonSearch_Click(object sender, EventArgs e)
{
string constring = @"Data Source=(LocalDB)'v11.0;AttachDbFilename=C:'Users'HomePC'Desktop'Lab2 DB'Lab2 DB'ResearchDB.mdf;Integrated Security=True";
using (SqlConnection con = new SqlConnection(constring))
{
using (SqlCommand cmd = new SqlCommand("SELECT * FROM '"+comboBox1.SelectedItem.ToString()+"' WHERE '"+ comboBox2.SelectedItem.ToString() +"' = '"+ textBox1.Text +"'", con))
{
cmd.CommandType = CommandType.Text;
using (SqlDataAdapter sda = new SqlDataAdapter(cmd))
{
using (DataTable dt = new DataTable())
{
sda.Fill(dt);
dataGridView1.DataSource = dt;
}
}
}
}
}
如果提供一个错误会有帮助,但一个明显的问题是您没有打开连接。
您可以在设置完CommandType
后打开连接。
cmd.CommandType = CommandType.Text;
con.Open();
另外,我建议参数化您的查询。这样更安全,还能减少潜在的打字错误。
using (var cmd = new SqlCommand(
"SELECT * FROM '" + comboBox1.SelectedItem.ToString() + "' WHERE '" + comboBox2.SelectedItem.ToString() + "' = @your_textbox_value", con))
{
cmd.CommandType = CommandType.Text;
cmd.Parameters.AddWithValue("@your_textbox_value", textBox1.Text);
con.Open();
...