sql-server - 获取选中复选框的所有值并在 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 运算符。
从 [db].[dbo].[tbl_TEST] WHERE COUNTRY IN (@COUNTRY_CSV_PARAM) 和 DOB = @DOB 中选择不同的 ID、姓名、地址、国家/地区、出生日期
推荐阅读
- sql - 在组中获取第 n 行 - SAS / SQL
- android - 如何使用存储卷 (/StorageAccessFramework) 解压缩文件?
- css - 如何设置 CSS 网格列的宽度和最大宽度?
- r - 找不到函数
- php - 当我在我的本地主机系统上安装 apache2 时,它显示了这个错误(Ubuntu 17.10)
- arangodb - Arngodb,Arangojs 检索数据时出错
- javascript - React - 循环内循环
- azure - 如何为应用程序网关后面托管的站点显示“停机维护”
- node.js - 我在哪里可以在 Node.js 中使用 mongoose 创建 MongoDB 文档?
- c++ - 具有回溯和 DP 的不同输出