日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

詳解MyBatisPlus邏輯刪除與唯一索引沖突問題

瀏覽:206日期:2023-10-19 15:23:04
1、問題背景:

在開發中,我們經常會有邏輯刪除和唯一索引同時使用的情況。但當使用mybatis plus時,如果同時使用邏輯刪除和唯一索引,會報數據重復Duplicate entry的問題。

舉個例子:

原來數據庫結構:

這里location_id是唯一索引

CREATE TABLE `eam_location` ( `id` int(11) NOT NULL AUTO_INCREMENT, `location_id` varchar(50) UNIQUE NOT NULL COMMENT ’位置代碼’, `location_level` tinyint(1) NOT NULL COMMENT ’位置級別’, `location_name` varchar(50) NOT NULL COMMENT ’位置名稱’, `parent_location_id` varchar(50) COMMENT ’上級位置代碼’, `delete_flag` tinyint(1) DEFAULT 0 COMMENT ’軟刪除’, `version` int(11) DEFAULT 1 COMMENT ’樂觀鎖’, PRIMARY KEY (`id`)) ENGINE=InnoDB DEFAULT CHARSET=utf8;

這里在刪除添加某一條數據后,delete_flag變成0,當刪除后delete_flag會變成1,再次添加相同的數據時,由于數據庫檢測不到原來數據,會報數據重復Duplicate entry的問題

解決辦法:參考邏輯刪除與唯一約束的需求沖突

SQL數據結構,將delete_flag用時間戳進行表示,唯一索引變成了聯合唯一索引 UNIQUE KEY unique_location_delete_flag(location_id, delete_flag) ,當添加一條數據時,delete_flag變成null,當刪除數據時,delete_flag變成刪除時的一個時間戳。再次添加相同數據時,由于添加的數據是聯合唯一索引unique_location_delete_flag ,delete_flag為null,不會產生沖突,多次刪除也是,完美解決問題。

CREATE TABLE `eam_location` ( `id` int(11) NOT NULL AUTO_INCREMENT, `location_id` varchar(50) NOT NULL COMMENT ’位置代碼’, `location_level` tinyint(1) NOT NULL COMMENT ’位置級別’, `location_name` varchar(50) NOT NULL COMMENT ’位置名稱’, `parent_location_id` varchar(50) COMMENT ’上級位置代碼’, `delete_flag` datetime COMMENT ’軟刪除’, `version` int(11) DEFAULT 1 COMMENT ’樂觀鎖’, PRIMARY KEY (`id`), UNIQUE KEY `unique_location_delete_flag`(`location_id`, `delete_flag`)) ENGINE=InnoDB DEFAULT CHARSET=utf8;

entity類:

@AllArgsConstructor@NoArgsConstructor@Builder(toBuilder = true)@Data@EqualsAndHashCode(callSuper = false)public class EamEquipmentType implements Serializable { private static final long serialVersionUID = 1L; /** * 數據庫自增id */ @TableId(value = 'id', type = IdType.AUTO) private Integer id; /** * 設備類型編號 */ private String typeId; /** * 設備類型 */ private String typeName; /** * 設備廠商 */ private String manufacture; /** * 設備型號 */ private String model; /** * 標準設備bom 0:未創建 1:已創建 */ private Boolean typeBom; /** * 標準設備bom id */ private Integer typeBomId; /** * 創建時間 */ private LocalDateTime createTime; /** * 軟刪除 */ @TableLogic() @TableField(fill = FieldFill.INSERT) private LocalDateTime deleteFlag; /** * 樂觀鎖 */ @Version @TableField(fill = FieldFill.INSERT) private Integer version;

yml配置文件:

mybatis-plus: global-config: db-config: logic-delete-value: 'now()' #邏輯刪除值是個db獲取時間的函數 logic-not-delete-value: 'null' #邏輯未刪除值為字符串 'null'

到此這篇關于詳解MyBatisPlus邏輯刪除與唯一索引沖突問題的文章就介紹到這了,更多相關MyBatisPlus邏輯刪除與唯一索引沖突內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!

標簽: Mybatis 數據庫
相關文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
五月天av在线| 国产精品久久久久久妇女| 久久不卡日韩美女| 亚洲图片久久| 亚洲另类黄色| 在线国产一区二区| 亚洲精品88| 国产一区二区精品福利地址| 性一交一乱一区二区洋洋av| 日韩福利视频一区| 亚洲精品婷婷| 亚洲色图网站| 国产欧美精品久久| 国产精品毛片aⅴ一区二区三区| 日韩精品1区2区3区| 日本久久一区| 日韩三级精品| 麻豆国产精品视频| 精品国产不卡| av亚洲一区二区三区| 欧美gv在线| 尹人成人综合网| 日韩av一级片| 欧美激情视频一区二区三区在线播放| 青青草91视频| 国际精品欧美精品| 久久久久久免费视频| 蜜臀av性久久久久蜜臀aⅴ流畅| 欧美片网站免费| 国产精品99一区二区三| 好看不卡的中文字幕| 欧美日韩免费观看一区=区三区| 成人自拍av| 喷白浆一区二区| 久久国产尿小便嘘嘘| 天堂а√在线最新版中文在线| 青草综合视频| 久久伦理在线| 伊人精品久久| 中文字幕系列一区| 日韩手机在线| | 亚洲三级网站| 精品一区二区三区亚洲 | 日韩精品一区二区三区免费观影 | 日韩精品不卡一区二区| 日韩欧美1区| 日韩精品亚洲专区| 亚洲欧洲一区二区天堂久久| 国产精品一二| 亚洲一区二区免费看| 国产66精品| 四虎精品一区二区免费| 99成人超碰| sm久久捆绑调教精品一区| 亚洲一二av| 伊人精品在线| 99久久精品网| 久久激情av| 免费人成在线不卡| 国户精品久久久久久久久久久不卡 | 日韩三区免费| 精品国产中文字幕第一页| 亚洲一区二区免费在线观看| 欧美资源在线| 在线视频观看日韩| 国产精品入口久久| 91久久精品无嫩草影院| 综合亚洲视频| 日精品一区二区三区| 99在线精品视频在线观看| 麻豆精品视频在线| 日韩高清中文字幕一区| 亚洲一区激情| 亚洲三级网站| 国产福利一区二区精品秒拍| 亚洲一级在线| 丝袜a∨在线一区二区三区不卡| 九九久久电影| 免费欧美在线视频| 久久这里只有精品一区二区| 麻豆一区二区在线| 久久尤物视频| 久久久精品五月天| 亚洲一区二区免费在线观看| 久久精品一区二区国产| 精品三级久久| 丝袜国产日韩另类美女| 99热精品在线| 国产欧美另类| 午夜精品亚洲| 91在线成人| 91精品国产自产在线观看永久∴| 精品一区欧美| 国产精品亚洲二区| 日韩精品一卡| 999久久久免费精品国产| 久久99伊人| 国产一区2区在线观看| 在线亚洲精品| 国产精品一区二区免费福利视频 | 久久视频国产| 青青草精品视频| 国产成人精选| 日韩精品麻豆| 日韩精品亚洲一区二区三区免费| 蜜桃久久久久| 婷婷成人av| 黑丝一区二区| 日韩在线黄色| 欧美久久精品一级c片| 国产精品探花在线观看| 一级欧洲+日本+国产| 欧美激情亚洲| 综合五月婷婷| a天堂资源在线| 亚洲精品综合| 免费精品视频| 国产国产精品| 久久精品官网| 99精品美女| 国产一区2区在线观看| 国产毛片精品| 欧美久久一区二区三区| 在线国产精品一区| 九一国产精品| 99久久亚洲精品蜜臀| 精品午夜av| 国产精品久久久久蜜臀 | 日本中文字幕一区二区视频| 欧美在线影院| 亚洲不卡av不卡一区二区| 正在播放日韩精品| 久久免费视频66| 日韩超碰人人爽人人做人人添| 久久亚洲欧美| 亚洲精品美女91| 国产欧美日韩亚洲一区二区三区| 亚洲精品高潮| 午夜久久一区| 亚洲精品美女91| 91成人精品在线| 国产偷自视频区视频一区二区| 久久三级福利| 99国产精品私拍| 先锋亚洲精品| 日韩精品高清不卡| 国产高清日韩| 91精品推荐| 中文字幕av一区二区三区人| 亚洲网址在线观看| 国产日韩中文在线中文字幕 | 日本成人一区二区| 国产精品第一| 久久精品观看| 天堂久久av| 国产亚洲观看| 久久精品国产68国产精品亚洲| 欧美日韩少妇| 亚洲欧美日本国产专区一区| 国产美女撒尿一区二区| 97精品视频在线看| 亚洲视频www| 日韩成人免费| 日本免费一区二区视频| 国产探花在线精品| 神马午夜久久| 欧美精品三级在线| 99国产精品久久久久久久成人热| 欧美日韩精品一区二区三区视频 | 蜜臀av国产精品久久久久| 欧美日韩va| zzzwww在线看片免费| 日本视频一区二区| 日韩精品一卡| 伊人网在线播放| 国产精品99精品一区二区三区∴| 免费久久99精品国产| 福利视频一区| 国产探花一区| 日韩中文av| 91精品国产自产在线观看永久∴| 久久久91麻豆精品国产一区| 日本欧美在线| 亚洲精品网址| 99精品视频在线观看免费播放| 欧美黄页在线免费观看 | 亚洲精品乱码| 亚洲欧洲一区| 99久久夜色精品国产亚洲狼| 97欧美在线视频| 福利一区和二区| 精品一区二区三区免费看| 亚洲三区欧美一区国产二区| 爽好久久久欧美精品| 夜夜嗨一区二区| 亚洲综合精品| 亚洲精品伦理| 日韩在线观看一区二区三区| 婷婷综合一区|