Créer une clé primaire auto-incrémentée
bonjour,
j'ai créé une table avec une clé primaire auto-incrémentée, mais quand je supprime une ligne, la clé ne se met pas à jour pour les lignes suivantes. Comment faire pour que ce soit le cas ?
exemple :
1>>pierre
2>>jean
3>>Philippe
si je supprime la ligne 2, j'obtiens ceci :
1>>pierre
3>>Philippe
Comment faire pour que Philippe passe automatiquement à 2 ?
ps : j'utilise phpmyadmin
merci
j'ai créé une table avec une clé primaire auto-incrémentée, mais quand je supprime une ligne, la clé ne se met pas à jour pour les lignes suivantes. Comment faire pour que ce soit le cas ?
exemple :
1>>pierre
2>>jean
3>>Philippe
si je supprime la ligne 2, j'obtiens ceci :
1>>pierre
3>>Philippe
Comment faire pour que Philippe passe automatiquement à 2 ?
ps : j'utilise phpmyadmin
merci
3 réponses
-
Contributeurbonjour, la clé primaire est permanente, elle ne va en principe jamais changer, en tous cas pas automatiquement. cela lui permet de servir de référence unique et permanente pour chaque enregistrement.
peux-tu expliquer ce que tu veux obtenir? une sorte de numéro d'ordre qui peut changer d'un moment à l'autre? -
ModérateurBonjour,
Il n'y a aucun interet à recalculer les ID ....
Bien au contraire c'est une source d'erreurs !
Par exemple, tu as une table utilisateur
1>>pierre
2>>jean
3>>Philippe
une table groupe
1>>Admin
2>>Modérateur
3>>invité
et une table memberofgroup (id_groupe, id_user )
1>> 3
1>>2
2>>3
1>>1
etc...
Si tu supprime le user 2... et que tu fais le recalcul .. alors l'association GROUPE / USER ne sera plus en concordance....-
ok. merci à tous pour vos réponses.
néanmoins, j'ai une autre question :
quand je crée la clé primaire sur phpmyadmin, je dois saisir une option "size". Sur le net, j'ai vu que les gens mettaient 255, mais je voudrais savoir à quoi ça correspond. Est-ce que c'est la limite de la clé primaire ? (il ne peut pas y avoir plus de 255 lignes dans ma table ?)
-
-
Attention, si tu fais cela, les jointures avec tes autres tables seront incorrectes, comme le dit Jordane d'ailleurs.
Concrètement, pourquoi veux-tu qu'il n'y ait pas de trou dans ta clé primaire?