sql >> Database teknologi >  >> RDS >> Mysql

automatisk stigning i primære efterlader huller i optællingen

Dette er ved design og vil altid ske.

Hvorfor?

Lad os tage 2 overlappende transaktioner, der laver INSERT'er

  • Transaktion 1 udfører en INSERT, får værdien (lad os sige 42), gør mere arbejde
  • Transaktion 2 udfører en INSERT, får værdien 43, gør mere arbejde

  • Transaktion 1 mislykkes. Ruller tilbage. 42 forbliver ubrugte
  • Transaktion 2 afsluttes med 43

Hvis fortløbende værdier var garanteret, ville hver transaktion skulle ske efter hinanden. Ikke særlig skalerbar.

Se også Modtag altid indsatte poster sammenhængende identitet Værdier (SQL-server men samme princip gælder)



  1. Sådan beregnes rang i MySQL

  2. SQL, tilføjelse af data til en tabel

  3. Forbindelsen hænger efter tidspunktet for inaktivitet

  4. T-SQL - Indsæt data i overordnede og underordnede tabeller