mybatis的怎么在mysql中循 环更新数据

mybatis的怎么在mysql中循 环更新数据,第1张

Java mysql mybatis批量更新数据库,采用以下写法即可执行,但是数据库连接必须配置:&allowMultiQueries=true

例如:jdbc:mysql://192.168.1.236:3306/test?useUnicode=true&characterEncoding=UTF-8&allowMultiQueries=true

<update id="batchUpdate" parameterType="java.util.List">

<foreach collection="list" item="item" index="index" open="" close="" separator="">

update test

<set>

test=${item.test}+1

</set>

where id = ${item.id}

</foreach>

</update>

你是否想达到下列目的:

budgetType 不为null,更新 BUDGET_TYPE_ 字段

budgetType 为努力时,不更新  BUDGET_TYPE_ 字段;

如果是可以如下做:

<update id="update">

    UPDATE PRO_BUDGET_F

       SET 

           <if test="budgetType != null"> BUDGET_TYPE_ = #{budgetType}</if>

           <if test="budgetType == null"> BUDGET_TYPE_ = BUDGET_TYPE_</if>

     WHERE ID_ = #{id}

</update>

即改变下思路,当budgetType 为null,不更新值(这里BUDGET_TYPE_ = BUDGET_TYPE_

只是把值重新设置一次)

注:上面的方法只是针对你Mybatis部分做出的修改,如果budgetType 为null,将执行一次无用的SQL语句,浪费系统资源,最好的办法是,到调用Mybatis时(一般在DAO)判断budgetType是否为空,为空则不执行数据库 *** 作

Mybatis只执行SQL *** 作,Dao(或者Service)附带业务检查,判断是否需要执行


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/6661144.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-26
下一篇 2023-03-26

发表评论

登录后才能评论

评论列表(0条)

保存