有时候报错并不可怕,可怕的是你害怕它。
针对上述问题,我相信大家仔细观察后不仅可以判断是哪里出现问题了,也可以知道是什么问题。我也很了解大家,大家一般看到这种成篇大论的报错,要么着急忙慌的找同伴咨询或者在实习公司就找自己小导师。
但是,这个对自己并没有多大的提升,倒不如自己冷静下来仔细分析呢
大家难道都很忙吗?年轻人就应该在这个快世界里,放慢一点节奏,让自己舒服也让自己安心。
那我们开始吧:
从出错的角度出发,便知道是sql'语句出现的问题。
那么在boot项目中sql语句一般写在xml文件中,我们就顺着这个思路去寻找xml文件。其次出现该错check the manual that corresponds to your MySQL server version for the right syntax to use near 'AND,我们也可以判断问题是出现在AND连接词附近,所以一切问题即将迎刃而解了。
我的xml源文件如下:
从上图可以看到,正常情况下,我们只要postman或者前端有参数传进来一般都不会有问题(除非自己的sql写的就是错的)。那为什么我如果只传部分参数或者传参为空就会报错呢?
到这里相信有些小伙伴已经发现了,当我们只传部分参数或者传参为空时,上图中的AND可能后边连接的就是空的内容,这在sql中是不允许的。所以,我们只要把AND放在if里边就可以了。
当我们再用postman测试时,就可以正常接收到数据了。