Mysql
當存在約束衝突時,為什麼 MySQL 會增加 auto_increment 值?
我在 MySQL 數據庫中有一個表
id
,其中有一列,其中包含auto_increment
主鍵。此表中還有一個 Unique 約束,位於不同的列上。我注意到,當我嘗試添加違反約束的記錄時,該
auto_increment
值仍會增加。這對我來說似乎很奇怪,因為它只是意味著價值越來越高,而這並不是必需的。我不是在尋求解決這個問題的方法,但我只是好奇為什麼會這樣。這在某些情況下有用嗎?
我正在使用 Mysql 5.5.38-0ubuntu0.14.04.1。
因為值是在事務範圍之外遞增的。這是您希望它工作的方式,以便單獨的事務可以愉快地插入行或回滾,而無需相互等待。
如果您關心差距或想要不同的行為,請停止使用內置並推出自己的…