sql >> Database >  >> RDS >> Mysql

Hoe om te gaan met fragmentatie van auto_increment ID-kolom in MySQL

Hernummeren zorgt voor verwarring. Bestaande rapporten zullen verwijzen naar record 99, en toch, als het systeem opnieuw nummert, kan het dat record hernummeren tot 98, nu zijn alle rapporten (en bevolkte gebruikersinterfaces) fout. Als je eenmaal een unieke ID hebt toegewezen, moet deze vast blijven.

Het gebruik van ID-velden voor iets anders dan eenvoudige unieke nummering zal problematisch zijn. Het hebben van een vereiste voor "geen gaten" is gewoon niet in overeenstemming met de vereiste om te kunnen verwijderen. Misschien kunt u records markeren als verwijderd in plaats van ze te verwijderen. Dan zijn er echt geen hiaten. Stel dat u genummerde facturen maakt:u zou een geannuleerde factuur met een waarde van nul hebben met dat nummer in plaats van deze te verwijderen.



  1. 2017 @ Multiplenines:de verhalen van onze klanten vieren

  2. pass integer array naar orakel procedure door c#

  3. Hoe een exec-resultaat toe te wijzen aan een sql-variabele?

  4. Dubbele rijen in een tabel verwijderen