明輝手游網(wǎng)中心:是一個(gè)免費(fèi)提供流行視頻軟件教程、在線學(xué)習(xí)分享的學(xué)習(xí)平臺(tái)!

如何重置MySQL中表中自增列的初始值的完成方法分享

[摘要]這篇文章主要介紹了重置MySQL中表中自增列的初始值的實(shí)現(xiàn)方法的相關(guān)資料,需要的朋友可以參考下重置MySQL中表中自增列的初始值的實(shí)現(xiàn)方法1. 問題的提出 在MySQL的數(shù)據(jù)庫(kù)設(shè)計(jì)中,一般都會(huì)設(shè)計(jì)自增的數(shù)字列,用作業(yè)務(wù)無關(guān)的主鍵。 在數(shù)據(jù)庫(kù)出現(xiàn)頻繁的刪除操作或者清空操作之后,其自增的值仍然會(huì)自...
這篇文章主要介紹了重置MySQL中表中自增列的初始值的實(shí)現(xiàn)方法的相關(guān)資料,需要的朋友可以參考下

重置MySQL中表中自增列的初始值的實(shí)現(xiàn)方法

1. 問題的提出

在MySQL的數(shù)據(jù)庫(kù)設(shè)計(jì)中,一般都會(huì)設(shè)計(jì)自增的數(shù)字列,用作業(yè)務(wù)無關(guān)的主鍵。 在數(shù)據(jù)庫(kù)出現(xiàn)頻繁的刪除操作或者清空操作之后,其自增的值仍然會(huì)自動(dòng)增長(zhǎng),如果需要重新開始該如何做呢?

2. 解決辦法

a. alter table

delete from table_name; 
ALTER TABLE table_name AUTO_INCREMENT = 1;

如果數(shù)據(jù)庫(kù)表中的數(shù)據(jù)很多,則刪除操作會(huì)持續(xù)比較久,這個(gè)問題需要注意。

b. truncate

truncate table_name

簡(jiǎn)單快捷,直接清空數(shù)據(jù)。

3. delete vs tuncate

主要的區(qū)別如下:

  • truncate速度快,不做日志記錄,故無法進(jìn)行rollback操作。 delete反之。

  • truncate會(huì)重置索引和自增初始值, delete則不會(huì)

  • truncate不會(huì)觸發(fā)trigger,而delete則會(huì)觸發(fā)。

以上就是如何重置MySQL中表中自增列的初始值的實(shí)現(xiàn)方法分享的詳細(xì)內(nèi)容,更多請(qǐng)關(guān)注php中文網(wǎng)其它相關(guān)文章!


學(xué)習(xí)教程快速掌握從入門到精通的SQL知識(shí)。