ORACLE 批量插入更新删除sql

复制代码
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
        PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
        "http://mybatis.org/dtd/mybatis-3-mapper.dtd">

<mapper namespace="com.nari.devices.mapper.KeyScheduleUpdateMapper">


    <insert id="insertBatch">
        INSERT INTO REC_METER_KEY_SCHEDULE_UPDATE (TASK_ID, METER_ID, UPDATE_CYCLE, KEY_TYPE, BEGIN_TIME, STATUS,
        CREATE_TIME, UPDATE_TIME, SOURCE, CLIENT_TYPE)
        <foreach collection="keyScheduleUpdateDtoList" item="item" separator=" UNION ALL ">
            SELECT
            #{item.taskId},
            #{item.meterId},
            #{item.updateCycle},
            #{item.keyType},
            #{item.beginTime},
            #{item.status},
            SYSDATE,
            #{item.updateTime},
            #{item.source},
            #{item.clientType}
            FROM DUAL
        </foreach>
    </insert>


    <update id="updateBatch" parameterType="java.util.List">
        <foreach collection="keyScheduleUpdateDtoList" item="item" index="index" separator=";" open="BEGIN"
                 close=";END;">
            UPDATE REC_METER_KEY_SCHEDULE_UPDATE
            SET
            UPDATE_CYCLE = #{item.updateCycle,jdbcType=INTEGER},
            KEY_TYPE = #{item.keyType,jdbcType=INTEGER},
            BEGIN_TIME = #{item.beginTime,jdbcType=DATE},
            STATUS = #{item.status,jdbcType=INTEGER},
            UPDATE_TIME = #{item.updateTime,jdbcType=DATE},
            SOURCE = #{item.source,jdbcType=INTEGER},
            CLIENT_TYPE =#{item.clientType,jdbcType=INTEGER}
            WHERE TASK_ID = #{item.taskId} and METER_ID = #{item.meterId,jdbcType=INTEGER}
        </foreach>
    </update>


    <delete id="deleteBatch" parameterType="java.util.List">
        delete from REC_METER_KEY_SCHEDULE_UPDATE where TASK_ID in
        <foreach item="item" index="index" collection="meterKeys" open="(" separator="," close=")">
            #{item}
        </foreach>
    </delete>
</mapper>
相关推荐
珠海西格电力5 分钟前
零碳园区有哪些政策支持?
大数据·数据库·人工智能·物联网·能源
数据大魔方25 分钟前
【期货量化实战】日内动量策略:顺势而为的短线交易法(Python源码)
开发语言·数据库·python·mysql·算法·github·程序员创富
Chasing Aurora1 小时前
数据库连接+查询优化
数据库·sql·mysql·prompt·约束
倔强的石头_1 小时前
【金仓数据库】ksql 指南(六)—— 创建与管理用户和权限(KingbaseES 安全控制核心)
数据库
小熊officer2 小时前
Python字符串
开发语言·数据库·python
渐暖°2 小时前
JDBC直连ORACLE进行查询
数据库·oracle
萧曵 丶3 小时前
Next-Key Lock、记录锁、间隙锁浅谈
数据库·sql·mysql·mvcc·可重复读·幻读
做cv的小昊3 小时前
【TJU】信息检索与分析课程笔记和练习(7)数据库检索—Ei
数据库·笔记·学习·全文检索
zgl_200537793 小时前
ZGLanguage 解析SQL数据血缘 之 标识提取SQL语句中的目标表
java·大数据·数据库·数据仓库·hadoop·sql·源代码管理
莳花微语3 小时前
记录一次OGG进程abended,报错OGG-01431、OGG-01003、OGG-01151、OGG-01296问题的处理
数据库·sql·mysql