成人在线亚洲_国产日韩视频一区二区三区_久久久国产精品_99国内精品久久久久久久

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

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

瀏覽:154日期: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 數據庫
相關文章:
成人在线亚洲_国产日韩视频一区二区三区_久久久国产精品_99国内精品久久久久久久
九九在线精品视频| 99国产精品久久久久久久| 在线观看亚洲成人| 国产91富婆露脸刺激对白| 一区二区在线电影| 久久久久久久国产精品影院| 国产日韩欧美三区| 日韩免费观看高清完整版在线观看| 久久99九九99精品| 欧美在线观看视频在线| 麻豆高清免费国产一区| 色婷婷久久久综合中文字幕| 午夜精品久久一牛影视| 色综合久久久网| 天堂久久久久va久久久久| 国产精品久久亚洲7777| 亚洲永久免费av| 7777精品久久久大香线蕉| 欧美福利一区| 福利91精品一区二区三区| 蜜桃传媒麻豆第一区在线观看| 亚洲午夜精品17c| 中文字幕中文乱码欧美一区二区| 精品少妇一区二区三区免费观看| 欧美日韩视频第一区| 色婷婷av一区二区三区之一色屋| 紧缚捆绑精品一区二区| 夜夜爽www精品| 亚洲国产精品久久人人爱| 久久先锋资源| 裸体歌舞表演一区二区| 7777精品伊人久久久大香线蕉的 | 欧美一区二区三区在线观看 | 欧美一区二区播放| 99在线视频精品| 国产精品理论片| 亚洲欧洲一区二区天堂久久| 亚洲午夜av在线| 91久久香蕉国产日韩欧美9色| 久草在线在线精品观看| 日韩一区二区影院| 99国产精品国产精品毛片| 日本一二三四高清不卡| 亚洲人成久久| 五月天激情综合| 欧美视频中文字幕| 成人sese在线| 亚洲婷婷国产精品电影人久久| 久久黄色影院| 国产精品一色哟哟哟| 成人免费av资源| 日韩成人一区二区| 蜜桃一区二区三区在线观看| 日本亚洲天堂网| 精品一区二区三区免费毛片爱| 精品夜夜嗨av一区二区三区| 精品在线免费观看| 国产精品一区二区在线观看不卡| 国产成人午夜片在线观看高清观看| 成人午夜av在线| 欧美日韩国产欧| 一本久久综合| 在线视频亚洲一区| 欧美人成免费网站| 精品日韩av一区二区| 欧美国产一区在线| 亚洲午夜激情av| 国内偷窥港台综合视频在线播放| 国产成人免费在线视频| 你懂的视频一区二区| 亚洲午夜激情| 亚洲在线成人| 欧美日韩午夜精品| 精品精品欲导航| 成人免费视频在线观看| 天天综合日日夜夜精品| 国产一区在线观看视频| a级精品国产片在线观看| 精品动漫3d一区二区三区免费版| 久久国产66| 欧美一区二区三区白人| 国产人成一区二区三区影院| 亚洲欧美aⅴ...| 麻豆91在线播放| 成人精品一区二区三区四区| 国产精品第十页| 久久久久一区| 欧美成人一区二区| 亚洲视频每日更新| 精品一区二区在线播放| 欧美精品二区| 色av成人天堂桃色av| 精品久久久久香蕉网| 一区二区三区中文字幕电影| 激情文学综合插| 狠狠综合久久av一区二区老牛| 色一情一乱一乱一91av| 日韩一级视频免费观看在线| 综合久久综合久久| 国产伦精品一区二区三区视频青涩 | 成人国产在线观看| 99热这里只有成人精品国产| 在线亚洲精品福利网址导航| 久久久久久免费毛片精品| 一级中文字幕一区二区| 国产成人免费高清| 一区二区三区欧美成人| 欧美一区二区三区免费| 亚洲国产精品成人综合| 免费的成人av| 伊人久久综合| 欧美麻豆精品久久久久久| 一区在线观看视频| 国产精品自产自拍| 国产精品免费一区二区三区在线观看| 4438x成人网最大色成网站| 亚洲精品乱码久久久久久| 国产成人免费网站| 久久av免费一区| 久久久午夜精品| 麻豆传媒一区二区三区| 狠狠入ady亚洲精品| 欧美久久久久久久久中文字幕| 《视频一区视频二区| 国产成人8x视频一区二区| 久久精品天堂| 亚洲欧洲无码一区二区三区| 丰满少妇久久久久久久 | 香蕉久久一区二区不卡无毒影院| 99久久免费视频.com| 色诱亚洲精品久久久久久| 国产精品免费丝袜| 粉嫩绯色av一区二区在线观看| 久久一二三四| 亚洲婷婷在线视频| av午夜精品一区二区三区| 欧美特级限制片免费在线观看| 日韩伦理电影网| 97se亚洲国产综合自在线不卡| 不卡一区二区在线| ...av二区三区久久精品| 久久久不卡影院| 日韩你懂的在线观看| 欧美视频在线一区| 色综合久久久久| 亚洲男人的天堂在线观看| 99亚偷拍自图区亚洲| 欧美一级电影网站| 久久精品久久99精品久久| 免费国产一区二区| 亚洲私人影院在线观看| 亚洲欧美综合| 日韩美一区二区三区| 韩日欧美一区二区三区| 久久网站免费| 亚洲图片欧美视频| 亚洲免费黄色| 国产精品久久久久久妇女6080| 成人性视频网站| 日韩免费性生活视频播放| 国产精品自拍在线| 欧美日韩第一区日日骚| 国产精品福利av | 一区二区三区在线观看网站| 国产精品看片你懂得| 26uuu精品一区二区| 91精品在线免费观看| 欧美日韩国产一区| 91福利区一区二区三区| 99国产精品久久久久久久久久| 亚洲高清视频一区| 中文字幕一区二区三区不卡在线 | 欧美一区二区三区在| 国产乱码精品一区二区三区忘忧草 | 美女一区二区三区在线观看| 色婷婷综合视频在线观看| 天天av天天翘天天综合网| 毛片一区二区| 五月天激情综合| 欧洲国产伦久久久久久久| 秋霞影院一区二区| 欧美亚洲动漫制服丝袜| 精品一区二区三区在线观看| 欧美日韩国产一级片| 国产91在线|亚洲| 久久影院电视剧免费观看| 欧美/亚洲一区| 中文欧美字幕免费| 亚洲欧洲三级| 天堂av在线一区| 欧美色成人综合| 成人丝袜18视频在线观看| 国产香蕉久久精品综合网| 欧美日韩网站| 一区二区欧美国产| 在线观看日韩国产| 国产精品一区二区果冻传媒| 337p日本欧洲亚洲大胆色噜噜| 国产精品99一区二区| 亚洲一区二区三区四区中文字幕|