今天被用了一下Access数据库,结果被它的模糊查询给折腾了一上午,到底是用*还是%?特此记下来
事情是这样的,我用C#写了个小的窗体程序,访问Access数据库进行一个模糊查询,我先手工往Access数据库里填一些数据,然后用它的查询工具想试一下效果,直接写了一条语句:
select * from news where title like '%公司%'
运行没结果,汗啊,不可能吧,剔除了like
的模糊查询它又没问题,邪门了,上网找啊找,有说Access中* 为匹配多个字符串,好吧把%号改为*号,运行,嘿,还真是哈,长见识了,难倒Access不支持标准SQL语句?疑惑之际,写程序去,为了快我直接就拼接了那条sql语句搁进去,调试运行,又没结果,见鬼了?死马当活马医,把*号改回%,这下又可以了,简直坑爹啊!
实践告诉我:Access中* 为匹配多个字符串,但是在C#编写Access的模糊查询中必须用 %才能查询匹配%,但是,在Access中的SQL查询中只能使用 *匹配查询!
大家有什么问题或技术上的想法可以在此与大家分享,也可以加入前端爱好者QQ群(141999928)一起学习进步:
【幸凡前端技术交流群】
如果您觉得本文的内容对您的学习有所帮助,捐赠与共勉,支付宝(左)或微信(右)