最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

mybatis-plus自帶保存接口,主鍵Id不是從1開(kāi)始問(wèn)題及解決

 更新時(shí)間:2025年12月15日 08:43:42   作者:明湖起風(fēng)了  
文章描述了在使用MyBatis-Plus的save方法保存數(shù)據(jù)時(shí),遇到主鍵ID過(guò)大導(dǎo)致報(bào)錯(cuò)的問(wèn)題,提出的解決方案包括使用@TableId注解讓MyBatis-Plus使用數(shù)據(jù)庫(kù)的自增模式,使用truncatetable方法重置表并備份數(shù)據(jù),以及通過(guò)建表語(yǔ)句設(shè)置主鍵ID的初始值

問(wèn)題描述

調(diào)用mybatis-plus自帶的save相關(guān)保存接口,自動(dòng)插入的主鍵Id非常大,導(dǎo)致數(shù)據(jù)很快超出范圍報(bào)錯(cuò)。

解決方案1

在相應(yīng)的bean實(shí)體類中對(duì)主鍵Id添加注解  @TableId(type = IdType.AUTO)  ,這樣mybatis-plus就會(huì)忽略掉主鍵,轉(zhuǎn)而用數(shù)據(jù)庫(kù)自己的自增長(zhǎng)模式。

	/**
	 * 非業(yè)務(wù)主鍵id
	 */
	@TableId(type = IdType.AUTO)
	private Integer id;

經(jīng)過(guò)測(cè)試,添加了該注解后,我將測(cè)試表中的數(shù)據(jù)清理后,插入數(shù)據(jù)庫(kù)的 id 還是很大,沒(méi)有起作用。

解決方案2

風(fēng)險(xiǎn)情況:

使用 truncate table 方法屬于重置數(shù)據(jù)庫(kù)表,會(huì)將數(shù)據(jù)庫(kù)表的內(nèi)容全部刪除,如果是新表創(chuàng)建,則可以使用。

如果需要兼容舊數(shù)據(jù),一定要備份,一定要備份,一定要備份,通過(guò)備份數(shù)據(jù)進(jìn)行重新插入,實(shí)現(xiàn) id 自增。

truncate table 表名

執(zhí)行完后,重新插入,id正確。 

解決方案3

還有一種可能就是,創(chuàng)建表的時(shí)候設(shè)置了主鍵id初始值:AUTO_INCREMENT=XXX,我們也可以通過(guò)建表語(yǔ)句進(jìn)行設(shè)置:

CREATE TABLE `device` (
  `id` int(11) NOT NULL AUTO_INCREMENT COMMENT '主鍵ID',
  `device_code` varchar(64) NOT NULL COMMENT '設(shè)備id',
  PRIMARY KEY (`id`) USING BTREE,
  UNIQUE KEY `idx_device_code` (`device_code`,`del_flag`) USING BTREE
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8mb4 ROW_FORMAT=COMPACT COMMENT='基礎(chǔ)信息表';

總結(jié)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • SpringBoot JAR和WAR方式打包并部署的詳細(xì)步驟及對(duì)比分析

    SpringBoot JAR和WAR方式打包并部署的詳細(xì)步驟及對(duì)比分析

    無(wú)論選擇JAR還是WAR部署方式,關(guān)鍵在于匹配團(tuán)隊(duì)的技術(shù)棧、運(yùn)維能力和業(yè)務(wù)需求,Spring Boot的靈活性支持兩種部署模式,為不同場(chǎng)景提供了合適的解決方案,本文給大家詳細(xì)對(duì)比分析了這兩種方式,需要的朋友可以參考下
    2026-01-01
  • Java中ArrayList的常見(jiàn)用法示例小結(jié)

    Java中ArrayList的常見(jiàn)用法示例小結(jié)

    本文介紹了Java的ArrayList,它是一個(gè)動(dòng)態(tài)數(shù)組,可以自動(dòng)調(diào)整大小,支持添加、刪除、獲取元素等操作,同時(shí),還討論了如何存儲(chǔ)基本數(shù)據(jù)類型以及在多線程環(huán)境下的使用注意事項(xiàng),感興趣的朋友一起看看吧
    2025-02-02
  • Maven的常用命令總結(jié)大全

    Maven的常用命令總結(jié)大全

    這篇文章主要給大家介紹了Maven常用命令總結(jié)的相關(guān)資料,maven最大的作用就是用于對(duì)項(xiàng)目中jar包依賴的統(tǒng)一管理,文中通過(guò)代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2023-12-12
  • 有關(guān)ThreadLocal的面試題你真的懂了嗎

    有關(guān)ThreadLocal的面試題你真的懂了嗎

    這篇文章主要介紹了面試題ThreadLocal,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-06-06
  • Java不帶break將導(dǎo)致case穿透問(wèn)題

    Java不帶break將導(dǎo)致case穿透問(wèn)題

    這篇文章主要介紹了Java不帶break將導(dǎo)致case穿透問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-02-02
  • Java中常用的6種排序算法詳細(xì)分解

    Java中常用的6種排序算法詳細(xì)分解

    這篇文章主要介紹了Java中常用的6種排序算法詳細(xì)分解,著重說(shuō)明每個(gè)算法的計(jì)算過(guò)程分解,是探究實(shí)現(xiàn)原理級(jí)的文章,對(duì)于深入理解這些算法有很大幫助,需要的朋友可以參考下
    2014-07-07
  • Java時(shí)區(qū)轉(zhuǎn)換實(shí)例代碼解析

    Java時(shí)區(qū)轉(zhuǎn)換實(shí)例代碼解析

    這篇文章主要介紹了Java時(shí)區(qū)轉(zhuǎn)換實(shí)例代碼解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-03-03
  • JPA配置方式+逆向工程映射到Entity實(shí)體類

    JPA配置方式+逆向工程映射到Entity實(shí)體類

    這篇文章主要介紹了JPA配置方式+逆向工程映射到Entity實(shí)體類,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-11-11
  • 使用Java將字符串在ISO-8859-1和UTF-8之間相互轉(zhuǎn)換

    使用Java將字符串在ISO-8859-1和UTF-8之間相互轉(zhuǎn)換

    大家都知道在一些情況下,我們需要特殊的編碼格式,如:UTF-8,但是系統(tǒng)默認(rèn)的編碼為ISO-8859-1,遇到這個(gè)問(wèn)題,該如何對(duì)字符串進(jìn)行兩個(gè)編碼的轉(zhuǎn)換呢,下面小編給大家分享下java中如何在ISO-8859-1和UTF-8之間相互轉(zhuǎn)換,感興趣的朋友一起看看吧
    2021-12-12
  • 淺析Java隨機(jī)數(shù)與定時(shí)器

    淺析Java隨機(jī)數(shù)與定時(shí)器

    本篇文章給大家分析了Java隨機(jī)數(shù)與定時(shí)器的實(shí)現(xiàn)原理以及代碼分享,有需要的讀者參考下吧。
    2018-02-02

最新評(píng)論

蓬溪县| 林芝县| 屯留县| 仙桃市| 泸定县| 田阳县| 平定县| 定州市| 蓝田县| 佛教| 海兴县| 夏河县| 洪泽县| 宁强县| 监利县| 巨鹿县| 长沙县| 新竹市| 西华县| 偃师市| 集贤县| 镇雄县| 辽阳市| 中江县| 武川县| 吉安县| 金堂县| 林甸县| 北流市| 石台县| 大竹县| 清河县| 前郭尔| 萝北县| 义乌市| 卢氏县| 云林县| 南漳县| 古蔺县| 罗田县| 遵义市|