mybaties批量更新无法进行
Posted ccgyyn
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mybaties批量更新无法进行相关的知识,希望对你有一定的参考价值。
<update id="updateEvaluteStateByList" parameterType="java.util.List">
<if test="list!=null">
<foreach collection="list" item="item" index= "index" separator =";">
update tb_flags
<set>
opioid_evaluate_flag = 0
</set>
<where>
id = #{item.id,jdbcType=INTEGER}
</where>
</foreach>
</if>
</update>
更新一条可以更新多条不行
再次之前写了批量插入
<!-- 批量插入 -->
<insert id="insertForeach" parameterType="java.util.List" useGeneratedKeys="true" keyProperty="nonOpioidId">
INSERT INTO tb_non_opioid ( assess_id, non_opioid_name, first_use_time, method_use, rate, weekly_use )
VALUES
<foreach collection="list" item="item" index="index" separator=",">
(
#{item.assessId,jdbcType=BIGINT},
#{item.nonOpioidName,jdbcType=VARCHAR},
#{item.firstUseTime,jdbcType=TIMESTAMP},
#{item.methodUse,jdbcType=VARCHAR},
#{item.rate,jdbcType=DOUBLE},
#{item.weeklyUse,jdbcType=DOUBLE}
)
</foreach>
</insert>
是可以的
修改数据库配置
# allowMultiQueries=true 允许批量
spring.datasource.url=jdbc:mysql://47.106.82.158:3306/addict?characterEncoding=utf-8&serverTimezone=CTT&allowMultiQueries=true
以上是关于mybaties批量更新无法进行的主要内容,如果未能解决你的问题,请参考以下文章
javamybatis在使用mybatis进行批量插入,批量更新等批量操作时,切割In集合List进行分批批量操作的java中的切割代码