par
Calimero » 23 déc. 2012, 23:36
Et moi j'aimerai savoir si la 5 peut-avoir comme ID 4 afin qu'il y est une suite logique et pas un trou...
De plus si j’insère une news, elle prendra comme ID 6 et non pas 4 et c'est bien dommage
Y a t-il une solution à ceci ?
Cordialement,
Salut,
comme beaucoup de débutants tu prends le problème à l'envers

Demande toi
pourquoi le "trou" te gêne concrètement, et tu trouveras dans la réponse à cette question ton véritable souci. La solution, la plupart du temps, consiste à se baser pour ce besoin sur autre chose que l'ID autoincrémenté (et là ça dépend de ta table en base et de ce que tu y fais).
Un id autoincrémenté a beaucoup d'avantages mais tu n'es pas censé lui donner un sens (l'id 5 est l'id "5", et tu ne peux pas préjuger qu'il est plus récent, ou suivant, ou plus important que l'id 4 - qui n'existe pas forcément - etc... C'est comme le numéro que tu peux avoir dans les tickets d'une file d'attente dans un service public par exemple, si tu tires le numéro 13 ce n'est pas forcément une mauvaise nouvelle... Surtout si le numéro qui passe actuellement est le 12

).
Tu peux t'en passer et gérer l'incrémentation toi-même dans ton programme, mais c'est dans presque tous les cas une source de complications inutile, en plus de poser d'autres problèmes si c'est mal fait (concurrence, etc).
[quote="kakou34"]Et moi j'aimerai savoir si la 5 peut-avoir comme ID 4 afin qu'il y est une suite logique et pas un trou...
De plus si j’insère une news, elle prendra comme ID 6 et non pas 4 et c'est bien dommage :(
Y a t-il une solution à ceci ?
Cordialement,[/quote]
Salut,
comme beaucoup de débutants tu prends le problème à l'envers :-) Demande toi [b]pourquoi[/b] le "trou" te gêne concrètement, et tu trouveras dans la réponse à cette question ton véritable souci. La solution, la plupart du temps, consiste à se baser pour ce besoin sur autre chose que l'ID autoincrémenté (et là ça dépend de ta table en base et de ce que tu y fais).
Un id autoincrémenté a beaucoup d'avantages mais tu n'es pas censé lui donner un sens (l'id 5 est l'id "5", et tu ne peux pas préjuger qu'il est plus récent, ou suivant, ou plus important que l'id 4 - qui n'existe pas forcément - etc... C'est comme le numéro que tu peux avoir dans les tickets d'une file d'attente dans un service public par exemple, si tu tires le numéro 13 ce n'est pas forcément une mauvaise nouvelle... Surtout si le numéro qui passe actuellement est le 12 :D ).
Tu peux t'en passer et gérer l'incrémentation toi-même dans ton programme, mais c'est dans presque tous les cas une source de complications inutile, en plus de poser d'autres problèmes si c'est mal fait (concurrence, etc).