您的位置:首页 > 编程语言 > Java开发

springboot mybaits 批量更新报错:updateBatch-Inline

2017-11-14 11:35 991 查看
小编使用springboot,mybatis做批量更新的时候控制台报错updateBatch-Inline

原因:

配置的 mysql jdbc 链接字符串 默认不支持一次性执行多个sql 语句。需要在配置数据库连接的url后面加上

characterEncoding=utf8&autoReconnect=true&zeroDateTimeBehavior=convertToNull&useSSL=false&allowMultiQueries=true


附:spring springmvc mybatis 整合批量操作,批量更新,批量插入

1、批量插入

<insert id="insertBatch" parameterType="java.util.List">
insert into sc_course_schedule (schoolid,teacherid,courseid,semesterid,classroomid,coursedesc,sequenceno,course_week,course_weekly,starttime,endtime,state,createtime,creator,modifytime,operater)
values
<foreach collection="list" item="item" index="index" separator=",">
(#{item.schoolid},#{item.teacherid},#{item.courseid},#{item.semesterid},#{item.classroomid},#{item.coursedesc},#{item.sequenceno},#{item.course_week},#{item.course_weekly},#{item.starttime},#{item.endtime},#{item.state},#{item.createtime},#{item.creator},#{item.modifytime},#{item.operater})
</foreach>
</insert>


2、批量更新

<update id="updateBatch" parameterType="java.util.List">
<foreach collection="list" item="item" index="index" open="" close="" separator=";">
update sc_course_schedule
<set>
teacherid=#{item.teacherid},
courseid=#{item.courseid},
classroomid=#{item.classroomid},
coursedesc=#{item.coursedesc},
modifytime=#{item.modifytime},
operater=#{item.operater}
</set>
<where>
id=#{item.id}
</where>
</foreach>
</update>


3、批量删除

<delete id="deleteBatch" parameterType="java.util.List">
delete from sc_course_schedule where id IN
<foreach collection="list" item="item" open="(" separator="," close=")">
#{item.id}
</foreach>
</delete>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: