问题:如下代码在日志中一直报语法错误,但经分析,没有任何问题
<update id="batchUpdate" parameterType="java.util.List" >
<foreach collection="list" item="item" open="" close="" separator=";">
UPDATE t_user SET
name=#{item.name},
email=#{item.email}
WHERE id=#{item.id}
</foreach>
</update>
解决方案:
jdbc有一个批量执行sql的开关,默认是关闭的,即禁止批量执行sql。这个开关的参数是allowMultiQueries。
配置方法:
加在jdbcUrl后面,如
jdbc:mysql://127.0.0.1:3306/database?useUnicode=true&characterEncoding=utf8&allowMultiQueries=true
文章描述了一种特定的编程问题,即在执行批量更新SQL语句时遇到的日志语法错误。问题的根本原因在于jdbc的allowMultiQueries参数默认为关闭状态,不允许批量执行SQL。解决方案是将jdbcUrl配置中的allowMultiQueries参数设置为true,以启用批量查询功能。
412

被折叠的 条评论
为什么被折叠?



