1. 首页
  2. 编程语言
  3. Java
  4. 详解MyBatisPlus逻辑删除与唯一索引冲突问题

详解MyBatisPlus逻辑删除与唯一索引冲突问题

上传者: 2021-06-14 23:53:36上传 PDF文件 63.69 KB 热度 15次

但当使用mybatis plus时,如果同时使用逻辑删除和唯一索引,会报数据重复Duplicate entry的问题。举个例子:原来数据库结构:这里location_id是唯一索引这里在删除添加某一条数据后,delete_flag变成0,当删除后delete_flag会变成1,再次添加相同的数据时,由于数据库检测不到原来数据,会报数据重复Duplicate entry的问题解决办法:SQL数据结构,将delete_flag用时间戳进行表示,唯一索引变成了联合唯一索引 UNIQUE KEY unique_location_delete_flag ,当添加一条数据时,delete_flag变成null,当删除数据时,delete_flag变成删除时的一个时间戳。entity类:yml配置文件:

下载地址
用户评论