sql >> Databasteknik >  >> RDS >> Mysql

Varför finns det ibland en eller flera luckor i kolumnen för automatisk ökning?

Det verkar ha något att göra med hur dina INSERT-satser bildas. Se denna fiol , som är något modifierad från ditt exempel. I det här fallet får du inga luckor (men det kommer du förmodligen om du lägger till fler inlägg... det gör det faktiskt .).

EDIT:Efter lite mer grävande upptäckte jag att du inte får luckor om du använder MyISAM-motorn (i motsats till InnoDB). Så det kanske är ett fel eller ett konstigt designval i InnoDB...?

EDIT 2:Ytterligare grävande har avslöjat denna bugg , arkiverat mot InnoDB-lagringsmotorn. Det matchar den ursprungliga frågans användningsfall väldigt nära. Ingen lösning på felet har tillhandahållits, men det verkar som att en lösning är att ställa in innodb_autoinc_lock_mode till 0 i din my.cnf-fil innan mysqld startar.




  1. Google Cloud SQL PG11 :kunde inte ändra storlek på segmentet delat minne

  2. Hur man löser det finns inte i GROUP BY-felet i mysql-frågan

  3. SQL Server:Hur kan jag gruppera flera radvärden i separata kolumner?

  4. Vad är DBMS? – En omfattande guide till databashanteringssystem