转博主https://blog.csdn.net/jiangyu1013/article/details/70237550#commentsedit
mysql 更新 SQL 语句 无错误 批量 报错bad SQL grammar []错误
mapper.xml
<update id="removeFalse">
<foreach collection="msid" separator=";" item="item">
UPDATE
on_meeting_auction SET
remove_false = 0
WHERE meeting_source_id =#{item}
</foreach>
</update>
<update id="removeFalse">
<foreach collection="msid" separator=";" item="item">
UPDATE
on_meeting_auction SET
remove_false = 0
WHERE meeting_source_id =#{item}
</foreach>
</update>
看似似乎没有一点问题,这里用到了Mybatis的动态sql,实际上说白了也就是拼sql,不过这个繁杂的工作交给Mybatis帮我们去做了。可是,只要一执行就要报语法错误。调试了好久.
解决方案
后来发现,原来mysql的批量更新是要我们主动去设置的, 就是在数据库的连接url上设置一下,加上* &allowMultiQueries=true *即可。