zoukankan      html  css  js  c++  java
  • 170829、mybatis使用oracle和mybatis中批量更新

    一、mybatis执行批量更新batch update 的方法(mysql数据库)

    1、数据库连接必须配置:&allowMultiQueries=true(切记一定要加上这个属性,否则会有问题,切记!切记!切记!)
      我的配置如下:jdbc:mysql://127.0.0.1:3306/test?useUnicode=true&characterEncoding=UTF-8&allowMultiQueries=true
    2、批量修改并加判断条件(修改字段可选)
    <!-- 批量更新 -->
        <update id="updateMatchs" parameterType="java.util.List">
            <foreach collection="matchs" item="item" index="index" open="" close="" separator=";">
                update t_match
                <set>
                    <if test="item.title !=null">
                        TITLE = #{item.title,jdbcType=VARCHAR},
                    </if>
                    <if test="item.homeScore !=null">
                        HOME_SCORE = #{item.homeScore,jdbcType=INTEGER},
                    </if>
                    <if test="item.visitScore !=null">
                        VISTT_SCORE = #{item.visitScore,jdbcType=INTEGER},
                    </if>
                    <if test="item.liveSource !=null">
                        LIVE_SOURCE = #{item.liveSource,jdbcType=VARCHAR},
                    </if>
                    <if test="item.liveURL !=null">
                        LIVE_URL = #{item.liveURL,jdbcType=VARCHAR},
                    </if>
                    <if test="item.isHotMatch !=null">
                        IS_HOT_MATCH = #{item.isHotMatch,jdbcType=VARCHAR}
                    </if>
                </set>
            where HOME_TEAM_ID = #{item.homeTeamId,jdbcType=VARCHAR} and
            VISIT_TEAM_ID = #{item.visitTeamId,jdbcType=VARCHAR} and
            MATCH_TIME = #{item.matchTime,jdbcType=BIGINT}
            </foreach>
        </update>
    3、java 接口
      /**
         * 批量修改赛程
         * 
         * @param matchs
         * @throws DaoException
         */
        void updateMatchs(@Param(value = "matchs")List<MatchBasic> matchs);

    二、mybatis执行批量更新batch update 的方法(oracle数据库)

    1、批量修改并加判断条件(修改字段可选)

    <update id="batchUpdateSplitSinglePickCurrency" parameterType="java.util.List">
            <foreach collection="list" item="item" index="index" open="begin" close=";end;" separator=";">
                UPDATE ZC_TR_MULTI_ORDER_CURRENCY
                <set>
                    <if test="item.sysCorderCode != null">
                        SYS_CORDER_CODE = #{item.sysCorderCode,jdbcType=VARCHAR},
                    </if>
    
                    <if test="item.sysPorderCode != null">
                        SYS_PORDER_CODE = #{item.sysPorderCode,jdbcType=VARCHAR},
                    </if>
    
                    <if test="item.bizPorderCode != null">
                        BIZ_PORDER_CODE = #{item.bizPorderCode,jdbcType=VARCHAR},
                    </if>
    
                    <if test="item.originalOrderCode != null">
                        ORIGINAL_ORDER_CODE = #{item.originalOrderCode,jdbcType=VARCHAR},
                    </if>
    
                    <if test="item.splitUserId != null">
                        SPLIT_USER_ID = #{item.splitUserId,jdbcType=VARCHAR},
                    </if>
    
                    <if test="item.createDate != null">
                        CREATE_DATE = #{item.createDate},
                    </if>
    
                    <if test="item.updateDate != null">
                        UPDATE_DATE = #{item.updateDate},
                    </if>
                </set>
                where id = #{item.id,jdbcType=VARCHAR}
            </foreach>
        </update>

    2、java接口

      /**
    * @Desc : 批量更新大批量子订单详情信息 * @Author : ZRP * @Date : 2018/1/26 15:24 */ int batchUpdateSplitSinglePickCurrency(@Param(value = "list") List<MultiOrderCurrency> list) throws Exception;
    PS:一定要注意文中标红色的地方
  • 相关阅读:
    [翻译] REMenu
    图片切换的效果
    刮奖效果
    粒子雪花效果
    Shimmer辉光动画效果
    解决Bootstrap 标签页(Tab)插件切换echarts不显示问题
    主要是解决,作为一个数据共享的数据库,存在的数据库统计,然后将计算的数据量输出到自己使用的数据库,进行主页面展示。
    使用kettle来根据时间戳或者批次号来批量导入数据,达到增量的效果。
    使用java的Calendar工具类获取到本月的第一天起始时间和最后一天结束时间。
    mysql根据分组和条件查询以后如何统计记录的条数
  • 原文地址:https://www.cnblogs.com/zrbfree/p/8378680.html
Copyright © 2011-2022 走看看