MyBatisPlus-删除数据
MyBatisPlus-删除数据
按照主键删除多条记录
List<Long> ids = Arrays.asList(new Long[]{2, 3});
userDao.deleteBatchIds(ids);
逻辑删除
删除操作业务问题:业务数据从数据库中丢弃
逻辑删除:为数据设置是否可用状态字段,删除时设置状态字段为不可用状态,数据留在数据库中。
案例:逻辑删除
-
数据库表中添加逻辑删除标记字段
-
实体类中添加对应字段,并设定当前字段为逻辑删除标记字段
public class User { private Long id; @TableLogic private Integer deleted; }
-
配置逻辑删除字面值
mybatis-plus: global-config: db-config: logic-delete-field: deleted logic-delete-value: 1 logic-not-delete-value: 0
执行SQL语句:
UPDATE tbl_user SET deleted=1 WHERE id=? AND deleted=0
标记被删除的数据将不再参与MP的数据查询,要想查询,要通过自己编写SQL语句进行查询