【前提】Mapper循环修改使用foreach标签,将多条sql语句拼接到一起,一次性通过一个sqlSession完成执行,执行的过程中报错。
【问题描述】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 'SET case_name='更新第11条的数据',
【问题定位】首先检查sql语法是否错误,如果sql语法本身没有错误,则再检查下面application.yaml中的mybatis的url配置是否添加允许批量执行
【解决办法】如果直接使用foreach完成循环修改,mybatis会报错,需要在sql配上加上以下配置允许批量执行。
?allowMultiQueries=true