ORACLE的批量操作:删除,添加,修改

https://blog.csdn.net/wei198621/article/details/113681660
https://blog.csdn.net/loongshawn/article/details/50496460
oracle中 数据不能填null,数据操作时必须指定数据类型。否则报无效数据111 的错误
字符串类型的用
在这里插入图片描述
如果po中的参数类型是double 那么请使用
jdbcType=NUMERIC
在这里插入图片描述

批量删除:

方法:
void deleteBatch(@Param("list") List<InvDistributionResultPO> invDistributionResultList);

mapper.xml中的sql:
 <delete id="deleteBatch">
        delete from INV_DISTRIBUTION_RESULT A
        where exists
        (
        select 1 from(
        <foreach collection="list" item="item" index="index" separator="union all">
            select B.* from INV_DISTRIBUTION_RESULT B where 1=1 and
            B.TASK_MASTER_ID = #{item.taskMasterId,jdbcType=VARCHAR} AND
            B.TASK_CHILDREN_ID= #{item.taskChildrenId,jdbcType=VARCHAR} AND
            B.TASK_RESULT_ID= #{item.taskResultId,jdbcType=VARCHAR}
        </foreach>
        )S where A.ID=S.ID
        )
    </delete>

批量添加:

方法:
void insertBatch(@Param("list") List<InvDistributionResultPO> invDistributionResultList);
mapper.xml中的sql
<insert id="insertBatch">
INSERT INTO INV_DISTRIBUTION_RESULT
        (
        <include refid="Base_Column_List"/>
        )

        <foreach collection="list" index="index" item="item" separator="union">
            select
            #{item.id,jdbcType=VARCHAR},
            #{item.taskMasterId,jdbcType=VARCHAR},
            #{item.taskChildrenId,jdbcType=VARCHAR},
            #{item.taskResultId,jdbcType=VARCHAR},
            #{item.sourceTaskId,jdbcType=VARCHAR},
            #{item.queryAvailableId,jdbcType=VARCHAR}
            from dual
        </foreach>
    </insert>

https://www.cnblogs.com/chenjichang/p/13369092.html
https://blog.csdn.net/weixin_42585386/article/details/116596615

批量修改:
https://www.jianshu.com/p/9da667771ccb/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值