MySQL 自增 ID 用完了怎么辦?
成都創(chuàng)新互聯(lián) - 內(nèi)蒙古服務(wù)器托管,四川服務(wù)器租用,成都服務(wù)器租用,四川網(wǎng)通托管,綿陽服務(wù)器托管,德陽服務(wù)器托管,遂寧服務(wù)器托管,綿陽服務(wù)器托管,四川云主機,成都云主機,西南云主機,內(nèi)蒙古服務(wù)器托管,西南服務(wù)器托管,四川/成都大帶寬,機柜大帶寬租用·托管,四川老牌IDC服務(wù)商
在MySQL中有很多類型的自增ID,每個自增ID都設(shè)置了初始值,然后按照一定的步長增加,只要定義了字節(jié)長度,那么就會有上限,如果達到上限再次添加,則會報主鍵沖突錯誤,解決方法可以考慮使用“bigint unsigned”類型。
測試
數(shù)據(jù)表定義的自增 ID,如果達到上限之后。
再申請下一個 ID 的時候,獲得到的值將保持不變。
我們可以通過下面這個例子來驗證一下:
create table `test` ( `id` int(10) unsigned NOT NULL AUTO_INCREMENT, PRIMARY KEY (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=4294967295; insert into `test` values (null);
可以從這個結(jié)果看的出來第一次插入數(shù)據(jù)的時候 ID 值還是 4294967295,
當(dāng)?shù)诙尾迦霐?shù)據(jù),則報主鍵沖突錯誤了,
這說明 ID 值達到上限之后,就不會再變化了。
以上就是MySQL 自增 ID 用完了怎么辦?的詳細內(nèi)容,更多請關(guān)注創(chuàng)新互聯(lián)其它相關(guān)文章!