我正在处理我的Windows窗体应用程序。在这个winform中,我有一个checkListBox,它绑定了我的sql数据库中的数据。我试图将checkListBox的checkedItem匹配到我的sql表列的文本,该文本以nvarchar
数据类型存储。我运行了调试模式,发现程序执行时它跳过了整个while循环。我不知道为什么,因为有价值的名称items
也确实显示该复选框在checkListBox检查如何读取列SqlDataReader
这是我的代码。
foreach(var items in checkListBox1.CheckedItems){
string query = "select * from my_table WHERE employeeName = '"+items+"'"
SqlCommand myCommand = new SqlCommand(query, myConn);
SqlDataReader dr = myCommand.ExecuteReader();
while(dr.Read()){
//read the column
}
}
下面是截图。我试图在列,以获取中国人名(不用担心它是什么笑)
你可能想做一些关于SQL注入的阅读。 – Paddy
您可能需要从添加'checkedItems'到'string'的'用逗号分隔,你可以使用'SQL query'了'foreach'这样的事情外foreach':'选择MY_TABLE *其中employeename在(” “+ string_used_to_add_checkedItems +”');' – Wanderer
您的*查询*生成正确吗?查询变量的价值是什么,你能证明这一点吗?我怀疑*项目*是造成问题。 – niksofteng