我有一个带有前端表单的ms access数据库,供用户搜索特定记录并相应地进行更新。
我的前端表单包含两个要搜索的文本框,第一个获取清单编号,第二个获取该清单上的行号。
我有一个按钮,通过使用“ Build Event”,我将逻辑应用如下:
Where condition = [Checklist_Number] Like "*" & [Forms]![Verification Form]![txt_chk_no] & "*" AND [Row_Number] Like "*" & [Forms]![Verification Form]![txt_row] & "*"
在某些情况下它可以正常工作,但在所有情况下都不能正常工作。 例如,当我输入1和1时,我需要检查清单1和行1。这很好。
但是当我输入1和2时,我需要检查清单12和22。
我认为因为12和22包含1和2,
现在,我知道逻辑上有些问题,请指导我一些逻辑,在这里我可以获取确切的值,而不是相似的值。
谢谢。
已编辑以显示通配符。
答案 0 :(得分:0)
如果您搜索的字段的确是数字,则摆脱Like运算符并改用=。然后,您将只获得完全匹配。
但是,我很惊讶在您的示例代码中不使用通配符
Like '*" & YourFormRef
您的代码正在返回多个值...?
编辑:尝试此操作-假设您的两个字段都是数字而不是文本。
Where condition = [Checklist_Number] = " & [Forms]![Verification Form]![txt_chk_no] & " AND
[Row_Number] = " & [Forms]![Verification Form]![txt_row]