Auto-incrément dans mysql ? Comment eviter un retour à 0 ?

Résolu
superchinois Messages postés 64 Date d'inscription vendredi 14 décembre 2001 Statut Membre Dernière intervention 19 juin 2010 - 15 mars 2007 à 15:44
superchinois Messages postés 64 Date d'inscription vendredi 14 décembre 2001 Statut Membre Dernière intervention 19 juin 2010 - 16 mars 2007 à 09:53
Bonjour,

J'ai une table qui contient les enregistrements suivants par exemple:

Monchamp1 Monchamp2
----------------------------
1 - toto
2 - titi
3 - tata

"Monchamp1" est un auto incrément. Si je vide ma table, elle recommence à se remplir avec monchamp1=0, alors que je voudrais monchamp1=4.

En bref je voudrais que mysql se "souvienne" de l'ancienne valeur de l'auto-incrément avant la suppression, et ce sans aucune manip de ma part. Est-ce possible ? Comment faire ? Merci d'avance... <!--IBF.ATTACHMENT_10705-->

<!-- THE POST -->

Attention à Astérix, mon Pitt Bull

7 réponses

coockiesch Messages postés 2268 Date d'inscription mercredi 27 novembre 2002 Statut Membre Dernière intervention 13 septembre 2013 4
15 mars 2007 à 19:36
Yop!
  Je crois que si tu supprimes tous les enregistrement ( DELETE ) plutôt que vider la table ( TRUNCATE? ), ca devrait jouer!

@++

R@f

La boîte à bouts de codes
"On dit que seulement 10 personnes au monde comprenaient Einstein. Personne ne me comprends. Suis-je un génie???"
3
FhX Messages postés 2350 Date d'inscription mercredi 13 octobre 2004 Statut Membre Dernière intervention 18 avril 2015 3
15 mars 2007 à 16:51
Nan, il faut obligatoirement que tu le précises après le vidage.

L'autoincrément commence à 1 automatiquement.
Si tu vides ta table, on revient à 1.

Ce qui est logique d'ailleurs.
0
superchinois Messages postés 64 Date d'inscription vendredi 14 décembre 2001 Statut Membre Dernière intervention 19 juin 2010
15 mars 2007 à 17:02
Re,

   A vrai dire je pensais à une option dans la config de mysql. Quelqu'un a une idée ?

Attention à Astérix, mon Pitt Bull
0
FhX Messages postés 2350 Date d'inscription mercredi 13 octobre 2004 Statut Membre Dernière intervention 18 avril 2015 3
15 mars 2007 à 18:26
regarde si y'a pas un start_increment comme option dans le fichier de config de mysql. Mais j'en doute :)
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
superchinois Messages postés 64 Date d'inscription vendredi 14 décembre 2001 Statut Membre Dernière intervention 19 juin 2010
16 mars 2007 à 08:57
Re,

   Merci pour les réponses... Mais pour info je fais bien des "DELETE" et non un truncate...

Attention à Astérix, mon Pitt Bull
0
malalam Messages postés 10839 Date d'inscription lundi 24 février 2003 Statut Membre Dernière intervention 2 mars 2010 25
16 mars 2007 à 09:45
Hello,

perso, quand je fais un delete, l'incrément reprend au dernier ID inséré, comme coockiesch le suggère.
Et c'est logique...un delete ne fait qu'effacer n lignes, il ne touche en rien à l'indexation de la table.
Je suis donc très surpris par ton problème.
0
superchinois Messages postés 64 Date d'inscription vendredi 14 décembre 2001 Statut Membre Dernière intervention 19 juin 2010
16 mars 2007 à 09:53
Bonjour,

   Effectivement, désolé d'avoir ouvert un message pour rien... J'ai retesté ce matin et effectivement ca fonctionne (qu'est-ce que je devais être fatigué moi hier  )

Juste pour info, en revanche, un truncate fait repartir à 0 l'autoincrément... Voilà merci pour tout !

Attention à Astérix, mon Pitt Bull
0
Rejoignez-nous