mysql id從1開(kāi)始自增 快速解決id不連續(xù)的問(wèn)題
mysql id從1開(kāi)始自增 解決id不連續(xù)
作為一個(gè)強(qiáng)迫癥患者,對(duì)于表格內(nèi)某些行刪除之后,id不連續(xù)這個(gè)問(wèn)題完全無(wú)法容忍,一開(kāi)始使用
TRUNCATE TABLE tablename
來(lái)實(shí)現(xiàn)id從頭自增,但是這個(gè)命令同時(shí)也會(huì)清空整個(gè)表,真的是坑爹啊。
后面才發(fā)現(xiàn)了正確的做法:
alter table tablename auto_increment = 1;
這個(gè)命令不會(huì)改動(dòng)現(xiàn)有的表的內(nèi)容和順序,同時(shí)新插入行的id會(huì)先使用已刪除的id,完美填補(bǔ)空缺id。
mysql自增id跳躍解決(不刪除數(shù)據(jù))
問(wèn)題描述:
從excel中導(dǎo)入大量數(shù)據(jù)到mysql,自增id沒(méi)有按順序自增,中間有很多跳過(guò)了,由于數(shù)量巨大,不想重新導(dǎo)入
解決思路:
按照id或者時(shí)間按從小到大排序==>獲取行號(hào)==>用行號(hào)替換原來(lái)的id
sql語(yǔ)句:
update tab as t1 join (select id,(@rowno:=@rowno+1) as rowno from tab a,(select (@rowno:=0)) b order by a.id) as t2 SET t1.id=t2.rowno WHERE t1.id=t2.id;
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
linux下 root 登錄 MySQL 報(bào)錯(cuò)的問(wèn)題
本文給大家記錄的是個(gè)人在linux下使用root用戶登錄mysql的時(shí)候遇到的一個(gè)錯(cuò)誤的解決方法,非常的簡(jiǎn)單實(shí)用,有需要的小伙伴可以參考下。2016-02-02ubuntu?22.04安裝mysql?8.0步驟與避坑指南
MySQL最流行的關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng),在WEB應(yīng)用方面MySQL是最好的關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng)應(yīng)用軟件之一,這篇文章主要給大家介紹了關(guān)于ubuntu?22.04安裝mysql?8.0步驟與避坑指南的相關(guān)資料,需要的朋友可以參考下2023-12-12登錄mysql報(bào)錯(cuò)Can‘t connect to MySQL server&n
這篇文章主要給大家介紹了登錄mysql報(bào)錯(cuò) Can‘t connect to MySQL server on ‘localhost:3306‘ (10061)解決方法,文中有詳細(xì)的解決步驟,需要的朋友可以參考下2023-09-09MySQL進(jìn)行表之間關(guān)聯(lián)更新的實(shí)現(xiàn)方法
在實(shí)際編程工作或運(yùn)維實(shí)踐中,對(duì)MySQL數(shù)據(jù)庫(kù)表進(jìn)行關(guān)聯(lián)更新是一種比較常見(jiàn)的應(yīng)用場(chǎng)景,針對(duì)這樣的業(yè)務(wù)場(chǎng)景,我們來(lái)看看有什么方法可以實(shí)現(xiàn)關(guān)聯(lián)更新,需要的朋友可以參考下2023-10-10