我有我的表中的一個主鍵列自動增量。但是,當我從主鍵ID最高的表中刪除一行(可以說11)。然後下一次我做一個插入它插入的密鑰爲12而不是11(儘管邏輯上它可以使用11,因爲沒有與密鑰11相關聯的條目)。我怎樣才能做到這一點?在MySQL中的自動增量
2
A
回答
6
你真的確定你想要這個嗎?自動增量列將保證唯一的數字,這就夠了。你可以更新下一個自動增量值(我將不得不查看它的工作原理),但我不認爲你應該這樣做。
如果您需要控制列中的數字,您應該手動進行。
不過,您可以更改像這樣的自動增量號:
ALTER TABLE tbl AUTO_INCREMENT = 100;
(來源:http://dev.mysql.com/doc/refman/5.0/en/example-auto-increment.html)
另一句話:如果你有一個數字一到十,並刪除5,你不能輕易做這個。你很難做出下一個auto_increment 5,因爲6已經在那裏了。 所以再次,雖然你可以做你的例子髒東西,真的很難在真實環境中做到這一點。也許開始一個新的問題,描述你的情況,並尋求建議如何解決這個問題沒有auto_increment技巧:)
0
Mysql不具備該功能開箱即用,您需要編寫代碼你的申請。你將遇到的一個問題是,如果兩個交易想要獲得和id,其中一個會得到一個重複的id錯誤。當然,這是更好的避免。
所有的數據庫引擎都缺乏這個「功能」,因爲它不適合併發。
相關問題
- 1. 自動增量列的MySQL
- 2. 在MySQL中保存自動增量
- 3. 在Java中檢索MySQL自動增量
- 4. MySQL:自動增量減1?
- 5. MYSQL自動增量範圍
- 6. MySQL自動增量白天?
- 7. MySQL觸發自動增量
- 8. 自動增量問題mysql
- 9. Mysql自動增量幫助
- 10. 重置mysql中的自動增量值
- 11. mysql中的多個自動增量
- 12. Mysql自動增量增加2和1?
- 13. Mysql自動增量重置自己? xamp
- 14. 使用觸發器在MySQL中的表中僞造自動增量增量
- 15. 在C#中自動增量#
- 16. 自動增量在Hibernate中
- 17. 在phpmyadmin中自動增量
- 18. MySQL的自動增量消失
- 19. MySQL的自動增量問題
- 20. MySQL的自動增量綁定屬性
- 21. 更新時的MySQL自動增量
- 22. MySQL的:將數據和自動增量
- 23. 基於字段的MySQL自動增量?
- 24. MySQL的獲得不帶自動增量
- 25. 基於組的MySQL自動增量
- 26. 自動增量列不會增加mysql表中的數字
- 27. 使我自己遞增的mysql id不自動增量
- 28. FTL中的自動增量
- 29. couchdb中的自動增量
- 30. Redis中的自動增量
是的。您不應該再次使用已刪除的ID。 – 2011-03-18 16:35:10
好吧,如果這是最好的做法 – aherlambang 2011-03-18 16:48:40