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

您的位置:首頁技術(shù)文章
文章詳情頁

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

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

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

舉個例子:

原來數(shù)據(jù)庫結(jié)構(gòu):

這里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;

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

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

SQL數(shù)據(jù)結(jié)構(gòu),將delete_flag用時間戳進行表示,唯一索引變成了聯(lián)合唯一索引 UNIQUE KEY unique_location_delete_flag(location_id, delete_flag) ,當(dāng)添加一條數(shù)據(jù)時,delete_flag變成null,當(dāng)刪除數(shù)據(jù)時,delete_flag變成刪除時的一個時間戳。再次添加相同數(shù)據(jù)時,由于添加的數(shù)據(jù)是聯(lián)合唯一索引unique_location_delete_flag ,delete_flag為null,不會產(chǎn)生沖突,多次刪除也是,完美解決問題。

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; /** * 數(shù)據(jù)庫自增id */ @TableId(value = 'id', type = IdType.AUTO) private Integer id; /** * 設(shè)備類型編號 */ private String typeId; /** * 設(shè)備類型 */ private String typeName; /** * 設(shè)備廠商 */ private String manufacture; /** * 設(shè)備型號 */ private String model; /** * 標(biāo)準(zhǔn)設(shè)備bom 0:未創(chuàng)建 1:已創(chuàng)建 */ private Boolean typeBom; /** * 標(biāo)準(zhǔn)設(shè)備bom id */ private Integer typeBomId; /** * 創(chuàng)建時間 */ 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獲取時間的函數(shù) logic-not-delete-value: 'null' #邏輯未刪除值為字符串 'null'

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

標(biāo)簽: Mybatis 數(shù)據(jù)庫
相關(guān)文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
国产欧美日韩精品一区二区免费| 亚洲欧洲美洲av| 精品一区二区三区亚洲| 国产欧美日韩一级| 国产福利资源一区| 精品国产午夜| 日韩国产欧美一区二区| 日韩免费小视频| 好看的av在线不卡观看| 亚洲经典在线| 日韩精品第一| 亚洲一级网站| 亚洲欧洲一区| 亚洲精品免费观看| 爽好多水快深点欧美视频| 视频一区在线播放| 日欧美一区二区| 麻豆一区在线| 91精品国产自产在线观看永久∴| 久久蜜桃av| 免费在线观看视频一区| 91成人在线精品视频| 国产一区二区三区四区二区| 久久中文亚洲字幕| 视频在线在亚洲| 国产精品4hu.www| 五月激情久久| 亚洲丝袜美腿一区| 国产精品17p| 蜜臀va亚洲va欧美va天堂| av资源中文在线天堂| 欧美a级一区| 蜜臀久久久久久久| 动漫av一区| 亚洲日本欧美| 日韩精品麻豆| 国产精品伦一区二区| 九一精品国产| 久久99影视| 日本不卡高清视频| 午夜欧美在线| 樱桃视频成人在线观看| 亚洲精品欧洲| 亚洲经典在线| 久久av导航| 亚洲精品四区| 精品欠久久久中文字幕加勒比| 久久亚洲精品中文字幕蜜潮电影| 久久精品观看| 欧洲亚洲一区二区三区| 国产欧美丝祙| 久久蜜桃av| 蜜桃视频一区二区| 久久精品欧洲| 日精品一区二区三区| 蜜臀av一区二区三区| 国产一区二区三区国产精品| 91成人在线| 国产免费av一区二区三区| 亚洲中字黄色| 99re国产精品| 久久福利精品| 伊人www22综合色| 亚洲欧洲日本mm| 在线精品国产亚洲| 青青草国产成人99久久| 亚洲视频国产精品| 五月婷婷亚洲| 男人天堂欧美日韩| 影音先锋久久精品| 91九色综合| 国产毛片精品久久| 国产精品成人自拍| 国产精品一区二区精品视频观看 | 国产高潮在线| 久久精品亚洲欧美日韩精品中文字幕| 精品五月天堂| 激情亚洲影院在线观看| 精品在线91| 亚洲精品激情| 精品丝袜久久| 成人精品中文字幕| 国产一区日韩一区| 欧美亚洲一区二区三区| 麻豆国产精品视频| 日韩精品看片| 野花国产精品入口| 国产精品片aa在线观看| 久久夜夜操妹子| 日本在线成人| 麻豆精品蜜桃| 啪啪亚洲精品| 日韩毛片视频| 日韩在线黄色| 欧美影院三区| 日韩福利在线观看| 麻豆精品少妇| 国产精品一线| 久久久久99| 日本国产亚洲| 久久久国产精品一区二区中文| 男人操女人的视频在线观看欧美| 日本99精品| 国产日本久久| 免费人成精品欧美精品| 婷婷亚洲成人| 精品高清久久| 亚州av日韩av| 99视频一区| 丝袜诱惑一区二区| 国产精品三p一区二区| 久久久久久久久99精品大| 国产精品久久久久av蜜臀| 91成人网在线观看| 欧美日韩免费看片| 国产一区二区三区探花| 国产精品调教视频| 国产情侣一区在线| 日韩av一二三| 91麻豆精品| 欧美日本久久| 国产精品传媒麻豆hd| 久久激情综合网| 日本va欧美va精品发布| 日韩精品亚洲一区二区三区免费| 免费看精品久久片| 欧美在线资源| 国产午夜久久| 亚洲日产国产精品| 91精品美女| 久久女人天堂| 中文字幕色婷婷在线视频| 日韩av首页| 夜夜精品视频| 日韩激情综合| 久久精品国产99国产| 91麻豆国产自产在线观看亚洲| 丰满少妇一区| 久久国产电影| 亚洲一区区二区| 欧美在线看片| 国产乱子精品一区二区在线观看 | 蜜臀久久99精品久久久久久9| 国产综合亚洲精品一区二| re久久精品视频| 亚洲一区欧美| 欧美激情福利| 三上亚洲一区二区| 日韩视频一区| 国产精品久久久久久久免费软件 | 免费日韩av片| 国产精品片aa在线观看| 黄色在线网站噜噜噜| 亚洲欧美日本国产专区一区| 首页欧美精品中文字幕| 美女精品久久| 免费中文字幕日韩欧美| 欧美91在线| 狠狠操综合网| 欧美黑人巨大videos精品| 久久精品成人| 欧美永久精品| 亚洲午夜av| 清纯唯美亚洲综合一区| 蜜桃视频在线网站| 日韩av午夜在线观看| 尤物tv在线精品| 另类欧美日韩国产在线| 香蕉视频成人在线观看| 日韩av首页| 日本v片在线高清不卡在线观看| 亚洲精品一二| 久久精品1区| 国产一区二区三区久久久久久久久| 国产精品丝袜xxxxxxx| av在线资源| 国产乱人伦丫前精品视频| 日韩在线卡一卡二| 婷婷激情一区| 日韩精品三区四区| 欧美激情日韩| 日本色综合中文字幕| 国产精品毛片| 亚洲高清激情| 亚洲电影有码| 久久精品国内一区二区三区水蜜桃| 你懂的网址国产 欧美| 奇米狠狠一区二区三区| 亚洲我射av| 美国三级日本三级久久99| 亚洲一级网站| 欧美日韩激情在线一区二区三区| 精品国产亚洲一区二区三区在线| 青青伊人久久| 蜜桃视频一区二区| 视频一区视频二区在线观看| aa亚洲婷婷| 亚洲精品一二三**| 涩涩涩久久久成人精品| 免费日韩精品中文字幕视频在线|