Pourquoi MySQL AUTO_INCREMENT n'est pas affecté par les restaurations
Le champ AUTO_INCREMENT de MySQL conserve des valeurs uniques quel que soit l'état de la transaction. Ce comportement découle du scénario suivant :
Scénario :
Problème :
Récupérer le La valeur 557 après une restauration crée plusieurs problèmes non résolus :
Conséquences :
Pour cette raison, les numéros de séquence d'Oracle fonctionnent également indépendamment des transactions.
Solution de contournement :
Si le maintien des valeurs d'incrémentation automatique sans interruption est crucial, les restaurations transactionnelles ne peuvent pas être utilisées. Au lieu de cela, un indicateur de statut peut être ajouté aux enregistrements :
Cette solution présente ses propres défis mais offre un moyen de conserver les pistes d'audit tout en évitant les écarts d'auto-incrémentation.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!