为了账号安全,请及时绑定邮箱和手机立即绑定

可以进行批量逻辑删除吗?怎么实现?

老师你好,MP可以进行批量逻辑删除吗?怎么实现?

正在回答

3 回答

       同学,可以实现批量逻辑删除啊,首先你的实体中要有使用注解@TableLogic标识的字段,然后你调用BaseMapper中的如下方法,如果符合条件的行数大于一个,就是批量逻辑删除。

int deleteByMap(@Param(Constants.COLUMN_MAP) Map<String, Object> columnMap);
int delete(@Param(Constants.WRAPPER) Wrapper<T> wrapper);
int deleteBatchIds(@Param(Constants.COLLECTION) Collection<? extends Serializable> idList);


1 回复 有任何疑惑可以回复我~
#1

慕哥2416699

老师,批量逻辑删除要动态填充几个字段,我继承了 AbstractMethod 抽象类,重写了injectMappedStatement方法。但是动态的几个字段不知道怎么填充。
2020-10-16 回复 有任何疑惑可以回复我~

// 生成的SQL,如下

<script>

UPDATE T_MDM_COLL_STRU_ITEM SET DELETED_BY=#{deletedBy},DELETED_ID=#{deletedId},DELETED_TIME=#{deletedTime},DELETED_FLAG='1' WHERE ID IN ( <foreach collection="list" item="id" separator=",">

            #{id}

        </foreach>) 

</script>



0 回复 有任何疑惑可以回复我~
//使用这个方法
dao.deleteBatchIds(Collections.singleton(new long[]{1094590409767661570L, 1094590409767661571L}));


1 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

可以进行批量逻辑删除吗?怎么实现?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信