今天研究了一下,学生系统的查询窗体,发现以前的问题没有去解决,问题如下:
`If Check1(1).Value Then
If Trim(txtname.Text) = "" Then
smeg = "姓名不能为空"
MsgBox smeg, vbOKOnly + vbExclamation, "警告"
txtname.SetFocus
Exit Sub
Else
dd(1) = True
If dd(0) = True Then
txtsql = txtsql & "and student_name='" & txtname.Text & "'"
Else
txtsql = txtsql & "student_name='" & txtname.Text & "'"
End If
End If
End If`
在这段代码中两条查询语句之间有什么差别?
txtsql = txtsql & "and student_name='" & txtname.Text & "'"
txtsql = txtsql & "student_name='" & txtname.Text & "'"
最关键的地方在,两条语句的txtsql 的值不同
最原始
txtsql = "select * from result_info where "
那么在两条语句中:
第一个txtsql
如果dd(0)=true则已经选了学号
txtsql= "select * from result_info where student_ID and student_name"
第二个txtsql
如果不选,即:dd(0)=false ,则
txtsql="select * from result_info where student_name"
其中&只起连接作用