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

Résolu
Signaler
Messages postés
64
Date d'inscription
vendredi 14 décembre 2001
Statut
Membre
Dernière intervention
19 juin 2010
-
Messages postés
64
Date d'inscription
vendredi 14 décembre 2001
Statut
Membre
Dernière intervention
19 juin 2010
-
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

Messages postés
2268
Date d'inscription
mercredi 27 novembre 2002
Statut
Membre
Dernière intervention
13 septembre 2013
3
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???"
Messages postés
2350
Date d'inscription
mercredi 13 octobre 2004
Statut
Membre
Dernière intervention
18 avril 2015
4
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.
Messages postés
64
Date d'inscription
vendredi 14 décembre 2001
Statut
Membre
Dernière intervention
19 juin 2010

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
Messages postés
2350
Date d'inscription
mercredi 13 octobre 2004
Statut
Membre
Dernière intervention
18 avril 2015
4
regarde si y'a pas un start_increment comme option dans le fichier de config de mysql. Mais j'en doute :)
Messages postés
64
Date d'inscription
vendredi 14 décembre 2001
Statut
Membre
Dernière intervention
19 juin 2010

Re,

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

Attention à Astérix, mon Pitt Bull
Messages postés
10839
Date d'inscription
lundi 24 février 2003
Statut
Modérateur
Dernière intervention
2 mars 2010
26
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.
Messages postés
64
Date d'inscription
vendredi 14 décembre 2001
Statut
Membre
Dernière intervention
19 juin 2010

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