所以我在访问VBA代码中有这两个查询。当我用like
替换=
时,我最终没有检索到任何记录。类似的工作完美但没有使用它,因为有时它会提取错误的数据。我对=运算符做错了什么?
Set rsStepCalendar = db.OpenRecordset("Select * from tblStepCalendar " & _
"Where (groupNr = '*" & txtGroupNum.Value & "*' ) " & _
"AND (Cancel = False)", dbOpenDynaset)
Set rs = db.OpenRecordset("Select * from tblContacts " & _
"Where (groupNum = '*" & txtGroupNum.Value & "*' ) " & _
"AND (canceledContact = False)", dbOpenDynaset)
答案 0 :(得分:2)
groupNum = '*" & txtGroupNum.Value & "*'
正在寻找由星号字符包围的值,当与LIKE
结合使用时,这些字符只具有符号含义为“任何东西”。
=
使用groupNum = '" & txtGroupNum.Value & "'
您还应该转义任何用户输入/使用参数化查询。