zoukankan      html  css  js  c++  java
  • mybatis+oracle如何批量执行多条update

    接口

    public void setStatus(List<Columns> columnsList);

    mapping xml
    mapping 中使用foreach,关于标签的使用,资料非常多,在此不再赘述。例如:

      <update id="setStatus">
            <foreach collection="list" index="index" item="col" open="begin" close=";end;" separator=";">
                UPDATE  ${col.funName}
                <set>
                    STATUS = #{col.status}
                </set>
                <where>
                    del_flag = '0'
                    AND FILLINYEAR = #{col.value}
                    AND UNITID = #{col.id}
                </where>
            </foreach>
        </update>

    注意: 
    1、foreach参数: open="begin" close=";end;" separator=";" 是关键,如果不适用open="begin" close=";end;"会出现如下错误: 
    ### The error may involve defaultParameterMap 
    ### The error occurred while setting parameters 
    2、${col.funName}:这里传入的是表名 所以要使用 ${}对于${}和#{}的使用在此不再赘述。

    结果:

    2018-05-18 09:11:37,787 DEBUG [modules.stat.dao.FillininfoDao.setStatus] - ==>  Preparing: begin UPDATE MOST_STAT_UNITBASEINFO SET STATUS = ? WHERE del_flag = '0' AND FILLINYEAR = ? AND UNITID = ? ; UPDATE MOST_STAT_BASERESOURCES SET STATUS = ? WHERE del_flag = '0' AND FILLINYEAR = ? AND UNITID = ? ;end; 
    2018-05-18 09:11:37,787 DEBUG [modules.stat.dao.FillininfoDao.setStatus] - ==> Parameters: B01(String), 2018(Integer), 62647d208d924ab8aa81ded8db037530(String), B01(String), 2018(Integer), 62647d208d924ab8aa81ded8db037530(String)
  • 相关阅读:
    禁止用户选中页面
    冒泡排序
    hadoop-1.2.1安装配置
    CentOS碰到两个问题,顺便解决了下
    CentOS 安装
    VM配置一个待安装LUNIX系统的环境
    CentOS下IP的配置
    C++ Win系统下的调试
    题解 P1781 【宇宙总统】
    题解 P2089 【烤鸡】
  • 原文地址:https://www.cnblogs.com/ZenoLiang/p/10508455.html
Copyright © 2011-2022 走看看