使用MS Access,我试图搜索特定列的字符串。使用DoCmd.OpenForm的WHERE参数,我能够使用"=“获得精确的匹配。但是,我需要使用LIKE,因为最终用户需要一个更自由的过滤器。
问题是,当我在组成SQL的字符串中使用%或*时,一直会得到一个错误:
stLinkCriteria = "[" & Combo_Filter_Name & "] Like %'" & Text_Filter_Name & "'%"
DoCmd.OpenForm stDocName, acFormDS, , stLinkCriteria我做错了什么?在使用之前,我使用的以下代码工作得很好,但同样,我需要使用以下代码:
stLinkCriteria = "[" & Combo_Filter_Name & "] = '" & Text_Filter_Name & "'"
DoCmd.OpenForm stDocName, acFormDS, , stLinkCriteria谢谢
发布于 2013-08-27 21:47:43
这里的问题是%符号在引号之外。
你写了%‘我的搜索’%
你应该写“%mysearch%”
(其中,我的搜索是您要搜索的字符串)
但是,您可能需要使用*而不是%来访问MS。
发布于 2013-08-27 21:15:37
MS Access不遵循SQL标准,而是使用*代替%,使用?代替like中的_。请参阅http://office.microsoft.com/en-us/access-help/like-operator-HP001032253.aspx
https://stackoverflow.com/questions/18475430
复制相似问题