2010-03-08 11 views
2

J'ai une table avec une clé primaire auto-incrémentée: id_utilisateur.MySQL: Modification de l'ordre des clés primaires auto-incrémentées?

Pour une raison actuellement théorique, il se peut que je doive modifier un user_id pour qu'il soit autre chose que lorsqu'il a été créé à l'origine par auto-incrémentation. Cela signifie qu'il ya une possibilité que les clés ne seront pas pour incrémentiel plus:

PK: 
1 
2 
3 
952 // changed key 
4 
5 
6 
7 

Je me demande si cela va causer des problèmes, et si MySQL lit quelque chose de spécial à l'ordre progressif des clés, étant donné qu'ils aurait dû exister dans l'ordre croissant (qui persiste même lorsque certaines lignes sont supprimées).

En supposant qu'il n'y a pas de problème de clé étrangère associée, ou que ceux-ci sont sous contrôle, y a-t-il un problème avec "l'ordre" des commandes auto-incrémentées de MySQL?

Répondre

3

Une fois que vous l'avez modifié, l'auto_increment commencera avec la nouvelle valeur. C'est à dire. Si vous modifiez un ID utilisateur à 1000, l'utilisateur suivant s'affichera sous la forme 1001, en conservant la sémantique auto_increment.