zoukankan      html  css  js  c++  java
  • mybatis批量插入、批量删除

    mybatis
    批量插入
    int addBatch(@Param("list")List<CustInfo> list);
    <insert id="addBatch" parameterType="java.util.List">
    INSERT INTO CUSTINFO(
    SERIALID,
    CUSTID,
    INVNM,
    UPDATETIMESTAMP
    )
    <foreach collection="list" item="item" separator="union all" index="index" >
    ( SELECT 
    #{item.serialid,       jdbcType=VARCHAR},
    #{item.custid,         jdbcType=VARCHAR},
    #{item.invnm,          jdbcType=VARCHAR},
    TO_TIMESTAMP(#{item.updatetimestamp}, 'syyyy-mm-dd hh24:mi:ss.ff')
    FROM DUAL
    )
    </foreach>
    </insert>
    批量删除
    int delCustInfoBatch(@Param("list")List<CustInfo> list);
    <update id="delCustInfoBatch" parameterType="java.util.List" >
    DELETE FROM CUSTINFO
    WHERE SERIALID IN
    <foreach collection="list" item="item" open="(" separator="," close=")"  index="index" >
    #{item.serialid,jdbcType=VARCHAR}
    </foreach>
    </update>


    要做批量插入数据库,首先得知道该数据库对批量插入所支持的语法。

    每一个数据库批量插入的语法都不一样。


    mysql插入
    <insert id="batchSave" parameterType="java.util.List">
    INSERT INTO TABLE_NAME
    ( ID,
    NAME
    )
    VALUES
    <foreach collection="list"  item="item" separator=",">
    ( #{item.id,jdbcType=VARCHAR},
    #{item.name,jdbcType=VARCHAR}
    )
    </foreach>
    </insert>

  • 相关阅读:
    mysql外键和连表操作
    数据库的操作
    进程之select和epoll
    jwt的应用生成token,redis做储存
    为什么前后端分离不利于seo
    redis的bitmap
    lnmp环境的nginx的tp5配置
    虚拟机安装cenos7后ifcfg看网卡无inet地址掩码等信息
    rsa加密
    hydra命令
  • 原文地址:https://www.cnblogs.com/gcczhongduan/p/5203336.html
Copyright © 2011-2022 走看看