Incrementation dans mysql - PHP - Programmation
Marsh Posté le 08-08-2006 à 11:42:51
Gandalf la croute a écrit : Slt à tous |
C'est le comportement normale des index auto-incrementees, donc rien d'anormal a ce qui t'arrive :-)
Ce n'est donc pas MySQL mais plus ton code php qui est a blamer ...
Marsh Posté le 08-08-2006 à 11:43:23
Woutcha a écrit : C'est le comportement normale des index auto-incrementees, donc rien d'anormal a ce qui t'arrive :-) |
Est ce à dire ?
recupérer la valeur du dernier item LAST_INSERT_ID() de la table avant dans un incrementer un autre ?
Marsh Posté le 08-08-2006 à 11:57:19
Non ce qu'on veux dire c'est que ce n'est pas normal que tout foire dés que l'on supprime un id. Il dois y avoir une couille dans le potage dans ton php (désolé) pour que ça fasse foiré tout..
Marsh Posté le 08-08-2006 à 16:46:35
Moi je vois aucun soucis que ce soit dans le code PHP ou dans MySQL.
Tu es en auto-increment, il est donc normal que lorsque tu supprimes un id, il ne le remplace pas mais incrémente le dernier ID inséré.
Si tu veux pouvoir remplacer un ID supprimé, il faudra virer l'auto increment de ton champ dans ta base et peut-être faire un petit traitement qui te permettra de recueillir le premier id absent, pour pouvoir le rajouter.
Marsh Posté le 08-08-2006 à 16:58:37
DarkHope a écrit : Moi je vois aucun soucis que ce soit dans le code PHP ou dans MySQL. |
Ta forcement un soucis au niveau php.. Quand tu fais un code qui liste ou récupère les enregistrements d'une table que tu est tous les id à la suite ou qu'il en manque 50 au milieu ça fonctionne d'ordinaire, ça si ça lui fait tout beuguer c'est qu'il y à un soucis quelque part non?
Marsh Posté le 08-08-2006 à 17:10:14
Il a pas dit que ça faisait bugguer, juste que s'il supprime 10 photos, il va passer du numéro 5, 6 ,7 au 18, 19 ,20 et il voudrait que les nouvelles prennent la place de ces 10 absentes.
Marsh Posté le 08-08-2006 à 17:12:04
la vrai question est pourquoi as-tu besoin d'avoir des identifiants "qui se suivent"?
Marsh Posté le 08-08-2006 à 17:12:07
Gandalf la croute a écrit : Slt à tous |
Pour moi ça lui fait tout beuguer
Sinon bah si c'est juste pour combler les trous effectivement ta solution est bonne
Marsh Posté le 08-08-2006 à 17:15:24
Citation : ce qui fait que mes index sont complétement incohérents |
Ca ne veut pas forcément dire que c'est un bug.
Citation : et donc le 17 n'est pas attribué |
C'est normal, puisqu'il est en auto-increment
Citation : Au bout d'un moment c'est folklo si l'on supprime 15 photos 15 numéros d'index disparaissent ! |
Toujours normal, puisqu'il est en auto increment
C'est juste qu'il voudrait combler les id absents, pour avoir une liste qui se suit.
Marsh Posté le 08-08-2006 à 17:18:43
ReplyMarsh Posté le 08-08-2006 à 17:25:50
bah c'est subjectif, perso, j'aime bien toujours avoir un id auto_increment, meme si ca sert a rien.
Marsh Posté le 08-08-2006 à 17:34:01
farib a écrit : bah c'est subjectif, perso, j'aime bien toujours avoir un id auto_increment, meme si ca sert a rien. |
+1
Marsh Posté le 08-08-2006 à 17:57:57
ouiai bah je voulais juste avoir un truc propre, vu que je repasse tout le site en revue !
Bref je ne bug pas j'ai juste un complexe psychotique avoir mes id s'incrémenter à l'arrache ! merci de vos réponses !
Marsh Posté le 08-08-2006 à 18:00:50
Mdr ah ok .. bah dans ce cas fait un script qui te remet tous tes id à la suite si ça peux t'aider à mieux dormir cette nuit
Marsh Posté le 08-08-2006 à 18:05:30
micfont999 a écrit : Mdr ah ok .. bah dans ce cas fait un script qui te remet tous tes id à la suite si ça peux t'aider à mieux dormir cette nuit |
non la nuit je code, le jour je dors au taf en bon informaticien
Merci !
Marsh Posté le 08-08-2006 à 18:13:31
Gandalf la croute a écrit : j'ai juste un complexe psychotique avoir mes id s'incrémenter à l'arrache |
Heu, pour memoire, l'auto-incremente te permet juste de generer de facon artificielle une clef primaire. C'est a dire un moyen d'identifier
chaque enregistrement de maniere unique dans ta table.
En revanche ca ne permet pas d'effectuer un ordonnancement ou d'avoir une plage d'id continue car ce n'est pas fait pour ca!
Marsh Posté le 09-08-2006 à 08:22:20
Woutcha, je le pensais jusqu'a maintenant car au boulot sous ISQL c'est le cas pas sous Mysql ! merci !
Marsh Posté le 08-08-2006 à 11:37:15
Slt à tous
j'ai un site de photos en php/mysql qui tourne depuis fort longtemps correctement. J'ai un petit souci sur mes valeurs du genre photo-id qui sont des index avec autoincrément. Donc chaque fois que j'ajoute une photo l'ID est incrémenté de 1. Sauf que récemment ça merde je supprime par exemple la photo 17 et que j'en upload une nouvelle elle ne prend pas le numéro libre (17) mais le dernier numéro genre 55 ce qui fait que mes index sont complétement incohérents ; et donc le 17 n'est pas attribué. Au bout d'un moment c'est folklo si l'on supprime 15 photos 15 numéros d'index disparaissent !
Comment peut -on réinitialiser la chose ? google est mon mais amais ! mais je ne trouve pas !
j'ai ça mais ca marche pas mieux !http://dev.mysql.com/doc/refman/5. [...] ement.htmlux
Message édité par Gandalf la croute le 08-08-2006 à 11:42:47