列名称“Pediatri”无效
本文关键字:无效 Pediatri | 更新日期: 2023-09-27 18:31:55
为什么会这样? 我表上的这个列名还可以,你能给我一个想法吗?
SqlCommand cmd = new SqlCommand ("select Emri from Drsignup WHERE Departamenti=" + DropDownList3.SelectedItem.Value + " ", cn);
SqlDataAdapter dt = new SqlDataAdapter(cmd);
DataSet det = new DataSet();
dt.Fill(det);
DropDownList4.DataSource = det;
DropDownList4.DataTextField = "Emri";
DropDownList4.DataBind();
您在 SQL 查询中使用字符串值时没有将其括在引号中:
select Emri from Drsignup WHERE Departamenti=Pediatri
因此,SQL 引擎认为Pediatri
引用数据库对象(在本例中为列)。
你可以用引号括起来,但这只能暂时解决问题的这一症状。 问题本身是您将查询的输入连接为代码,而不是将其视为值。 请改用参数作为值:
SqlCommand cmd = new SqlCommand ("select Emri from Drsignup WHERE Departamenti = @Departamenti", cn);
cmd.Parameters.AddWithValue("@Departamenti", DropDownList3.SelectedItem.Value);