Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1157 connectés 

  FORUM HardWare.fr
  Programmation

  mysql: auto_increment

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

mysql: auto_increment

n°119330
fabriceMer​c
Posté le 30-03-2002 à 13:11:01  profilanswer
 

bon alors le truc c'est que je voudrais savoir comment réinitialiser mon Id ( qui est auto_incrementé ) à 0 .
 
Ca pose problème car lorsque je supprime toutes mes entrées dans la table les Ids continuent à s'incrémenter mais ne reprennent pas à 0.
 
 
Merci les gars!

 

[jfdsdjhfuetppo]--Message édité par fabriceMerc--[/jfdsdjhfuetppo]

mood
Publicité
Posté le 30-03-2002 à 13:11:01  profilanswer
 

n°119331
skylight
Made in France.
Posté le 30-03-2002 à 13:15:45  profilanswer
 

c'est pas possible si c'est un index

n°119335
massanu
Posté le 30-03-2002 à 13:24:49  profilanswer
 

jai le meme probleme
ca sincrement par exemple jusqua 5 si je supprime le 5, la prochaine crée sera 6 c bizarre
 
donc voila
bon topic Fabrice ;)

n°119336
skylight
Made in France.
Posté le 30-03-2002 à 13:28:48  profilanswer
 

massanu a écrit a écrit :

jai le meme probleme
ca sincrement par exemple jusqua 5 si je supprime le 5, la prochaine crée sera 6 c bizarre
 
donc voila
bon topic Fabrice ;)  




 
le principe meme des bases de données de type mysql
 
quand tu supprime  une rangée, en fait ca supprime la rangée, mais l'espace libéré reste. Donc tu aura en quelque sortes un "trou"
 
exemple  
 
1 blabla test
2 blabla toto
3 test toto
4 gnagna hihi
 
 
 
je supprimer la 3
 
on aura donc
 
1 blabla test
2 blabla toto
 
4 gnagna hihi
 
 
le trou de la suppression reste :)
 
si tu rajoute quelque chose, ca sera forcément apres la dernier ligne, donc
 
1 blabla test
2 blabla toto
 
4 gnagna hihi
5 haha toto
 
 
voilà A+

n°119339
massanu
Posté le 30-03-2002 à 13:35:16  profilanswer
 

ouais c assez relou
ya pas une feinte pour detourner ca ?

n°119342
fabriceMer​c
Posté le 30-03-2002 à 13:49:46  profilanswer
 

mais moi je supprime toutes les entrées dans la base , il y a donc plus de trous mais cela s'incremente quand même!!!!!!

n°119343
skylight
Made in France.
Posté le 30-03-2002 à 13:52:00  profilanswer
 

fabriceMerc a écrit a écrit :

mais moi je supprime toutes les entrées dans la base , il y a donc plus de trous mais cela s'incremente quand même!!!!!!  




les trous tu les vois pas, je les ai montré explicitement, mais il n'apparaissent pas, c comme ca que c organisé ds le fichier de ta base de données

n°119344
fabriceMer​c
Posté le 30-03-2002 à 13:53:14  profilanswer
 

bon de toute facon cela pose pas de probleme .

n°119350
massanu
Posté le 30-03-2002 à 14:03:13  profilanswer
 

ca pose probleme pour moi par exemple
si on fait un systeme de news  
 
et que sur la page des news on fait un lien vers la news suivante, et bien si ta ca
 
1 news1
2 news2
 
4 news4
 
sur la page de la news2 yaura un lien qui pointera vers la 3 et non pas vers la 4 c ca le probleme.
tu voit ce que je veut dire

n°119359
Toucouch
Posté le 30-03-2002 à 14:56:43  profilanswer
 

Il est possible de forcer, lors de la création d'un nouvel enregistrement, la valeur d'un champ en auto_increment. Je ne sais pas quel est l'objectif exact, mais un petit algo tout con peut permettre de détecter les "trous" et éventuellement les remplir, ou alors ne pas utiliser l'option auto_increment et tout faire "à la main".

mood
Publicité
Posté le 30-03-2002 à 14:56:43  profilanswer
 

n°119360
Toucouch
Posté le 30-03-2002 à 15:02:03  profilanswer
 

massanu a écrit a écrit :

ca pose probleme pour moi par exemple
si on fait un systeme de news  
 
et que sur la page des news on fait un lien vers la news suivante, et bien si ta ca
 
1 news1
2 news2
 
4 news4
 
sur la page de la news2 yaura un lien qui pointera vers la 3 et non pas vers la 4 c ca le probleme.
tu voit ce que je veut dire  




Tu peux modifier ta table et ajouter un colonne "NewsSuivante" ou alors faire un script qui teste tous les numéros jusqu'à en trouver un valide. Ex: Tu te trouves sur la page 3, tu veux la suivante, mais la 4 n'existe plus: Tu lances une requ^ete pour savoir si la page identifiée par le numéro suivant la page courante (4 en l'occurence) existe. Ce n'est pas le cas, donc tu testes la page 5, etc. jusqu'à trouver une page valide (en s'assurant de ne pas ^etre sur la dernière page, bien s^ur! ;) )

n°121338
Petrus75
Posté le 04-04-2002 à 13:29:27  profilanswer
 

Meme soucis :(
 
C pas aussi derangeant chez moi mais j'aurais bien voulu y remedier.
 
Je modifie la valeur des mes id et les retrie a la main, pkoi ca n'efface pas ces "trous"?

n°121352
bjbebert
Posté le 04-04-2002 à 14:03:43  profilanswer
 

massanu a écrit a écrit :

jai le meme probleme
ca sincrement par exemple jusqua 5 si je supprime le 5, la prochaine crée sera 6 c bizarre  



C'est bizarre, chez moi c'est l'inverse. Si je supprime le dernier, le compteur revient un cran en arrière.
Ce qui me pose d'ailleurs problème.

n°121363
Mara's dad
Yes I can !
Posté le 04-04-2002 à 14:47:11  profilanswer
 

massanu a écrit a écrit :

ca pose probleme pour moi par exemple
si on fait un systeme de news  
 
et que sur la page des news on fait un lien vers la news suivante, et bien si ta ca
 
1 news1
2 news2
 
4 news4
 
sur la page de la news2 yaura un lien qui pointera vers la 3 et non pas vers la 4 c ca le probleme.
tu voit ce que je veut dire  




 
C'est pas vraiement un problème d'auto-incréméntation çà !
 
Si tu as 4 news 1, 2, 3 et 4, et qua chacunne pointe sur la suivante :
 
Vers quoi pointe la 4 ?
Si tu suprime la 3 tu veux que la base fasse automatiquement pointer la 2 sur la 4, ou que la 4 devienne un 3 automatiquement ?
 
Dans ce dernier cas, que divient un enreg dans une autre table, qui pointait vers la 4 ?
 
L'autoincrémentation t'assure que deux enregs n'ont pas la même valeur sans que tu ais besoin de la caluler, c'est tout.
 
Pour supprimer les trous, la seule solution, c'est de recopier dans une autre table, mais il fait alors penser à faire suivre les relations !

 

[jfdsdjhfuetppo]--Message édité par Mara's dad--[/jfdsdjhfuetppo]


---------------
Laissez l'Etat dans les toilettes où vous l'avez trouvé.

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation

  mysql: auto_increment

 

Sujets relatifs
[MySQL] OptimisationFlash to PHP/ Php to Flash via base mySQL?
Flash to PHP/ Php to Flash via base mySQL?tailles des champs mysql [edit : ajout d'infos et d'analyse inside]
Acceder a une base de donnée Mysql a distance ???[PHP MySQL] Ca me gonfle (normal je suis un noob)
Ouverture auto like a popup et actualisationBackup et MySQL
[PHP/MySQL]Problème a propos de l'auto increment ....Bug dans MySQL avec l'AUTO_INCREMENT et les index ?
Plus de sujets relatifs à : mysql: auto_increment


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR