mybatis 一次执行多条SQL


在默认情况下,一次性发过去的多条sql是不合法的。

想要让mysql一次执行多条sql语句,必须进行手动设置。

让mysql驱动开启批量执行sql的开关。

怎么开启呢?在拼装mysql链接的url时,为其加上allowMultiQueries参数,设置为true,如下:

jdbc.jdbcUrl=jdbc:mysql://127.0.0.1:3306/database?useUnicode=true&characterEncoding=utf8&allowMultiQueries=true

在每条sql语句后面插入分隔符“;”

 <if test="list!=null">
        <foreach close="" collection="list" index="index" item="item" open="" separator=";"> update items set name = #{item.name,jdbcType=VARCHAR}, price = #{item.price,jdbcType=VARCHAR}, pic = #{item.pic,jdbcType=VARCHAR}, detail = #{item.detail,jdbcType=LONGVARCHAR}, createtime = #{item.createtime,jdbcType=VARCHAR} where id = #{item.id,jdbcType=INTEGER} </foreach>
    </if>

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM