zoukankan      html  css  js  c++  java
  • mybatis 根据主键批量insert或update

    1、需求:

      主键存在:update

      主键不存在:insert

    2、关键语法:

      on duplicate key update

    3、批量操作

     1    <insert id="insertOrUpdateCoLod" parameterType="map">
     2         insert into sd_colog_details (call_time, logid, call_number,
     3                                       call_type, call_result, time_length,
     4                                       trans_result,co_id
     5         )
     6         values
     7         <foreach collection="coLogList" item="coLog" separator=",">
     8             (
     9             #{coLog.callTime,jdbcType=TIMESTAMP},
    10             #{coLog.logid,jdbcType=BIGINT},
    11             #{coLog.callNumber,jdbcType=VARCHAR},
    12             #{coLog.callType,jdbcType=SMALLINT},
    13             #{coLog.callResult,jdbcType=SMALLINT},
    14             #{coLog.timeLength,jdbcType=INTEGER},
    15             #{coLog.transResult,jdbcType=SMALLINT},
    16             #{coLog.coId,jdbcType=VARCHAR}
    17             )
    18         </foreach>
    19         on duplicate key update
    20             -- 需要更新的字段
    21             logid=values(logid),
    22             call_number=values(call_number),
    23             call_type=values(call_type),
    24             call_result=values(call_result),
    25             time_length=values(time_length),
    26             trans_result=values(trans_result)
    27     </insert>

    备注:其中主键为联合主键(co_id, call_time)

     on duplicate key update 后面根据 需要更新的字段

  • 相关阅读:
    js中json对象取键和值
    canvas基本图形
    JavaScript数组实战小练习
    以面试为提纲的前端知识
    用js写三级联动
    JavaScript读取本地json文件
    用jquery写的json省市县三级联动下拉
    纯CSS实现3D按钮效果
    纯CSS仿windows系统loading效果
    一个有意思的标签<marquee>
  • 原文地址:https://www.cnblogs.com/lxn0216/p/14476185.html
Copyright © 2011-2022 走看看