如何解决获取所有已选中复选框的值并在SQL语句中使用
我希望获取选中的复选框的文本值,并将该文本值用作我的SQL语句的参数。到目前为止,我编写的代码将获取第一个检查的值,但之后没有获取其他值。有谁有任何想法做到这一点的最佳方法?还请注意,我有不确定数量的复选框,这些复选框会不断变化,因此正在寻找不需要我为每个选项编写代码的东西。
下面是到目前为止我所获得的代码的一个示例,如上所述,它仅获得第一个复选框。
For Each item As ListItem In chkBox.Items
If item.Selected = True Then
Using con As New SqlConnection(GblSqlCon)
Using cmd As New SqlCommand("SELECT DISTINCT ID,NAME,ADDRESS,COUNTRY,DOB FROM [db].[dbo].[tbl_TEST] WHERE COUNTRY = @COUNTRY AND DOB = @DOB")
cmd.Parameters.AddWithValue("@DOB",txtDOB.Text)
cmd.Parameters.AddWithValue("@COUNTRY",chkBox.Text)
MsgBox(chkBox.Text)
Using sda As New SqlDataAdapter()
cmd.Connection = con
sda.SelectCommand = cmd
Using dt As New DataTable()
sda.Fill(dt)
End Using
End Using
End Using
End If
Next
解决方法
如果您使用的是checkedBoxList,并且同时勾选了多个国家/地区,请按以下方式更改查询:-
注意;将参数@COUNTRY设置为csv字段,并使用IN运算符。
选择区域ID,名称,地址,国家/地区,DOB 从[db]。[dbo]。[tbl_TEST] COUNTRY IN(@COUNTRY_CSV_PARAM) AND DOB = @DOB
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。