使用mybatis框架分页插件报错### Cause: java.sql.SQLSyntaxErrorException: You have an error in your SQL syntax;

报错信息如下:
### Cause: java.sql.SQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'limit 0,10' at line 3

从上面可以看出是sql语句出现了问题,但是把sql语句放在navicat里面运行,却可以运行成功,但是在项目里面却没有跑起来,为什么嘞?

请看我项目里面的sql:

<select id="selectByCondition" parameterType="String" resultType="com.itheima.pojo.CheckGroup">
    select * from t_checkgroup
    <if test="value!=null and value.length>0">
        where helpCode=#{value} or code=#{value} or name=#{value};
    </if>
</select>

注意 where helpCode=#{value} or code=#{value} or name=#{value}; 这里的分号很重要

分号一定不能加,因为mybatis的分页插件在执行的时候,会默认在后面加上分页的sql语句,而你这里加上了分号,就表示sql语句已经结束了,等到分页插件加上分页语句的时候,就出现了sql错误。

 解决方法就是去除后面的分号,如下图所示:

 

  • 0
    点赞
  • 0
    收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
©️2022 CSDN 皮肤主题:深蓝海洋 设计师:CSDN官方博客 返回首页
评论 1

打赏作者

java百炼成仙

你的鼓励将是我创作的最大动力

¥2 ¥4 ¥6 ¥10 ¥20
输入1-500的整数
余额支付 (余额:-- )
扫码支付
扫码支付:¥2
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值