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

MySQL數據庫刪除數據自增ID不連續(xù)的實現示例

 更新時間:2024年11月11日 09:28:17   作者:淺天yxc  
本文介紹了MySQL數據庫刪除數據后自增ID不連續(xù)的問題,文中通過2種方法解決,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧

MySQL數據庫刪除數據后,再新增數據就會導致自增ID不連續(xù)

解決方法

1. 刪除一行數據后,其后數據自增ID值減一(mapper.xml)

update 表名 set id = id - 1 where id > #{deleteId}

2.  更新下一個自增ID值

當設置值小于 max(id) 時,會自動設置為 max(id)+1 ,故一般設置為1就好

alter table 表名 auto_increment = 1

性能優(yōu)化

上述方法每次刪除數據都要執(zhí)行,可通過MySql的定時任務實現性能優(yōu)化——每天零點進行自增ID重置

1. 定義重置自增ID的存儲過程

create procedure p_reset_id()
begin
    set @i = 0;
    update 表名 set id = (@i := @i + 1);
    alter table 表名 auto_increment = 1;
end

2.  開啟事件調度器

show variables like 'event_scheduler';
set global event_scheduler = on;

3. 定義事件/定時任務

create event e_reset_id
on schedule every 1 day 
starts '2024-10-12 00:00:00'
do call p_reset_id();

到此這篇關于MySQL數據庫刪除數據自增ID不連續(xù)的實現示例的文章就介紹到這了,更多相關MySQL 刪除數據自增ID不連續(xù)內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家! 

相關文章

  • Mysql字符集utf8和utf8mb4詳解

    Mysql字符集utf8和utf8mb4詳解

    文章介紹了MySQL中utf8和utf8mb4兩種字符集的區(qū)別,包括編碼方式、存儲空間、索引長度以及支持的Unicode字符范圍,同時,通過創(chuàng)建兩個表并插入數據進行存儲長度的比較,驗證了上述理論
    2024-12-12
  • Centos MySQL 5.7安裝、升級教程

    Centos MySQL 5.7安裝、升級教程

    這篇文章主要為大家詳細介紹了Centos MySQL 5.7安裝、升級教程,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-01-01
  • MySQL復制機制原理講解

    MySQL復制機制原理講解

    在本篇文章中小編通過詼諧幽默的語言圖文給大家講述了MySQL復制機制的原理及相關知識點,需要的朋友們參考下。
    2019-05-05
  • 數據庫Sql實現截取時間段和日期實例(SQL時間截取)

    數據庫Sql實現截取時間段和日期實例(SQL時間截取)

    在許多情況下你也許只想得到日期和時間的一部分,而不是完整的日期和時間,下面這篇文章主要給大家介紹了關于數據庫Sql實現截取時間段和日期(SQL時間截取)的相關資料,需要的朋友可以參考下
    2023-05-05
  • PureFTP借助MySQL實現用戶身份驗證的操作教程

    PureFTP借助MySQL實現用戶身份驗證的操作教程

    這篇文章主要介紹了PureFTP借助MySQL實現用戶身份驗證的操作教程,就像普通程序中的用戶注冊功能那樣為用戶登陸數據信息建立一個數據庫來進行驗證,需要的朋友可以參考下
    2015-12-12
  • mysql server is running with the --skip-grant-tables option

    mysql server is running with the --skip-grant-tables option

    今天在mysql中新建數據庫提示The MySQL server is running with the --skip-grant-tables option so it cannot execute this statement,原來是數據中配置的--skip-grant-tables,這樣安全就降低了,這個一般當忘記root密碼的時候需要這樣操作
    2017-07-07
  • 如何解決mysql的count()函數條件表達式不生效問題

    如何解決mysql的count()函數條件表達式不生效問題

    該文章總結了SQL查詢中`count`函數統(tǒng)計錯誤的原因,以及三種解決方法:使用`ornull`方法、`IF()`函數和`casewhen`表達式,當不滿足條件時,表達式的值為NULL
    2024-11-11
  • Mysql之索引長度限制方式

    Mysql之索引長度限制方式

    這篇文章主要介紹了Mysql之索引長度限制方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-01-01
  • MySQL的數據類型和建庫策略分析詳解

    MySQL的數據類型和建庫策略分析詳解

    無論是在小得可憐的免費數據庫空間或是大型電子商務網站,合理的設計表結構、充分利用空間是十分必要的。這就要求我們對數據庫系統(tǒng)的常用數據類型有充分的認識。下面我就將我的一點心得寫出來跟大家分享。
    2008-04-04
  • Mysql?InnoDB?B+樹索引目錄項記錄頁管理

    Mysql?InnoDB?B+樹索引目錄項記錄頁管理

    這篇文章主要為大家介紹了Mysql?InnoDB?B+樹索引目錄項記錄頁管理,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-05-05

最新評論

武胜县| 包头市| 道孚县| 赣榆县| 静海县| 东源县| 渝北区| 泾川县| 威宁| 浦城县| 信丰县| 临泉县| 平遥县| 阿拉善右旗| 綦江县| 寿光市| 固原市| 龙门县| 尤溪县| 衡南县| 镇沅| 农安县| 上饶县| 大足县| 蕉岭县| 青阳县| 汨罗市| 调兵山市| 泗洪县| 连江县| 正安县| 株洲市| 尚志市| 慈溪市| 延津县| 和顺县| 府谷县| 潜江市| 长治县| 泸州市| 当雄县|