将删除标记设置默认值(例如0),将唯一字段与删除标记添加唯一键约束。当某一记录需要删除时,将删除标记置为NULL。 由于NULL不会和其他字段有组合唯一键的效果,所以当记录被删除时(删除标记被置为NULL时),解除了唯一键的约束。此外该方法能很好地解决批量删除的问题(只要置为NULL就完事 ...
一.问题描述 在业务中经常会有这样一种需求即某字段不能重复,例如用户表的手机又或者是身份证.而遇到这种问题一般两种处理方法,一:插入或修改之前先进行一次查询判断是否存在该记录 二:利用数据库唯一索引约束保证数据的唯一性. 但如果用方法一会有两个缺点,一是低效率,二是在高并发的系统中,很难保证其可靠性,故我们在这使用第二中方法,也就是设置唯一索引.设置唯一索引本身是没问题的,但目前需要基于逻辑删除之 ...
2021-05-21 17:26 1 2301 推荐指数:
将删除标记设置默认值(例如0),将唯一字段与删除标记添加唯一键约束。当某一记录需要删除时,将删除标记置为NULL。 由于NULL不会和其他字段有组合唯一键的效果,所以当记录被删除时(删除标记被置为NULL时),解除了唯一键的约束。此外该方法能很好地解决批量删除的问题(只要置为NULL就完事 ...
开发系统时,有时候在实现功能时,删除操作需要实现逻辑删除,所谓逻辑删除就是将数据标记为删除,而并非真正的物理删除(非DELETE操作),查询时需要携带状态条件,确保被标记的数据不被查询到。这样做的目的就是避免数据被真正的删除。 给表增加deleted字段,用于表示数据是否被删除,可以定 ...
我们在使用mybatis-plus时,一般设备逻辑删除是非常简单的,基本上在yaml等配置文件中做一下配置。然后在字段上注解@TableLogic就可以了。有不清楚的,可以参考https://www.xiangcaowuyu.net/java ...
1. 需要在删除的字段上添加注解@TableLogic 2. 在配置文件中写上配置 ...
项目中数据库表设计原则用到了逻辑删除:数据本身没有被删除,只是将deleted字段设置为1 mybatis-plus在逻辑删除方面的设置如下: 在实体中,相关的设置如下: 测试过,全局配置和在实体中加入@TableLogic注解,可以二选一,因为在实体中加入太麻烦 ...
第一数据库表中要有is_deleted字段 例如: 接下来配置类 @EnableTransactionManagement @Configuration @MapperScan("com.atguigu.eduservice.mapper") public class ...
引入mybatis-plus的依赖,其他的无注意点,按照官网配置即可 逻辑删除规则可以不配。 ...
通过mybatis-plus实现分页,也是很简单,插件大法。 一、分页 1、配置分页插件 把分页的插件也配置到统一的配置类里: 2、使用分页 还是在测试类中增加测试方法,这里列了常用到的方法,后面配合前端页面做分页功能时候,都要用上。 目前数据表共12条数据,运行一下,对比 ...