您的问题并不完全清楚,但在我看来,您需要根据复选框构建标准。
先准备你的 select
select
Dim sql As String = "Select .... From ... Where 1=1"
然后,为每个复选框执行此操作
If chk.Checked Then sql += " AND Field1 = '" & cb.Text & "'" End If . . . . . .
为每个组合框执行此操作
' NOTE: good practice - to have an empty item at first position, ' so user can select it as to say, "I select nothing". In this case you ' do If cbo.Selectedndex > 0 Then If cbo.Selectedndex > -1 Then sql += " AND Field1 = '" & cbo.Text & "'" End If . . . . . .
这是一般的想法。还记得参数化,即
sql += " AND Field1 = @1"
看到这个答案 参数