Aller au contenu

Mysql - Repositionner la valeur d'une clé


Nicolas

Sujets conseillés

Bonjour,

J'ai une base de données Mysql sur laquelle la valeur de la clé d'une table est largement supérieure à la valeur du dernier enregistrement.

Exemple : l'id du dernier enregistrement est 45. Lorsqu'il y a un nouvel enregistrement créé, l'id prend la valeur 10 0xx (car j'avais fait un test d'ajout dans la base avec phpmyadmin en utilisant la valeur 10 000 pour l'ID). Donc ca m'oblige à modifier l'id à 46... je dois faire ça à chaque fois qu'un enregistrement est ajouté.

Je voudrais savoir si c'était possible de faire en sorte que le prochain enregistrement ajouté prenne automatiquement la valeur 47...

Je sais pas si j'ai été clair ;-)

Merci d'avance.

Lien vers le commentaire
Partager sur d’autres sites

J'essaierai d'optimiser la table sous phpmyadmin afin qu'il reorganise sa gestion de l'auto incrément et ne garde plus trace de ton test meme si il a été supprimé.

A essayer....

Lien vers le commentaire
Partager sur d’autres sites

Non ça me marche pas, mysql ne modifie pas la valeur de l'auto-increment après une optimisation.

Si tu y tiens vraiment tu peux peut-être avec phpmyadmin faire un export de ta table ('structure' et 'données'), détruire ta table et la recréer avec une nouvelle valeur d'auto-increment. C'est pas très propre mais ça te permet au moins d'être sûr de ne modifier aucune clé primaire.

Lien vers le commentaire
Partager sur d’autres sites

Non ça me marche pas, mysql ne modifie pas la valeur de l'auto-increment après une optimisation.

Si tu y tiens vraiment tu peux peut-être avec phpmyadmin faire un export de ta table ('structure' et 'données'), détruire ta table et la recréer avec une nouvelle valeur d'auto-increment. C'est pas très propre mais ça te permet au moins d'être sûr de ne modifier aucune clé primaire.

Bonjour,

Merci pour votre aide à tous les 2

Cette méthode fonctionne ;-) Apres l'export il faut juste editer la valeur de l'auto increment du fichier sql avant de le reimporter :

ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=xxxx ;

Lien vers le commentaire
Partager sur d’autres sites

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...