這是我的表id字段爲無符號的TINYINT PRIMARY KEY與NOT NULL和AUTO_INCREMENT。是可以更新到空值的自動增量主鍵值爲MySQL表
+----+
| id |
+----+
| 1 |
| 4 |
|254 |
|255 |
+----+
我的應用程序是一個嵌入式應用程序,所以我使用tinyint這樣的小型數據類型。我的id值總數不會高達255.但如果中間值被刪除了多少次,那麼插入新的id值遲早肯定會達到255。
我有一些問題,
是否可以設置自動遞增特性使得它會插入新的ID在不存在更大的價值(這裏是2)?
如果不是請建議某種方式來處理這個問題,除了使用更高的數據類型的id和更新刪除一個id後更高的id值(如,如果我刪除id = 2更新所有id值大於2 id -1,以便所有值在插入新值時保持順序)。
我不會質疑是否有必要保持TINYINT你的情況,但我想指出的是,自動遞增不支持「重置」功能的示例,而且你所做的任何事情都會根據你的需求定製。你可能想要檢查[this](http://stackoverflow.com/questions/2214141/auto-increment-after-delete-in-mysql)SO q-and-a。 – Sevle
如果你想做這樣的事情,那麼你肯定不想自動遞增功能。也就是說,我可以想到爲什麼你會想要做這樣的事情,沒有任何理由,它幾乎可以肯定地指出你對關係數據理解的缺陷。 – Strawberry
@Strawberry我該如何使用有限的ID? –