sql >> Database >  >> RDS >> Mysql

MySQL-tabel met AUTO_INCREMENT primaire id geeft het nummer niet vrij na een rollback

Omwille van gelijktijdigheid kan de waarde voor automatisch verhogen niet "terugdraaien" met uw transactie. Als een ander proces records had ingevoegd terwijl uw transactie aan de gang was, riskeerde u later een botsing met hun ID's.

Laten we als voorbeeld zeggen dat uw transactie in proces "A" ID's 1,2 en 3 grijpt. Een ander proces "B" wordt uitgevoerd en krijgt ID's 4 en 5. Als de identiteit wordt teruggedraaid met uw transactie en het volgende proces "C" nodig heeft 5 ID's, het zou 1,2,3,4,5 krijgen, maar 4 en 5 waren al ingenomen door proces "B".




  1. Is er een andere manier om dit programma te implementeren zonder geneste while-lus te gebruiken?

  2. Lente 2011 PostgreSQL-conferenties, VS/Canada

  3. Typecast string naar geheel getal

  4. Hoe een enkel bestand uit de mediawinkel te verwijderen?