Modifier valeurs auto increment

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Modifier valeurs auto increment

par albat » 03 juil. 2007, 19:33

Et si on brûlait l'hérétique ? :-* :langue:

par zeus » 03 juil. 2007, 16:40

Salut,

Disons que ce que tu cherches à faire sera, au mieux, inutile pour le fonctionnement de ta base.
En effet, à part pour un "confort" de lecture, que les identifiants se suivent ou pas est inutile pour la base.

Je te conseille donc de ne pas perdre de temps à essayer de développer ça, sachant que tu risques d'introduire une faille dans ton projet et de laisser les identifiants en place.

Sinon, pour ce que tu cherches à faire, à part un traitement qui met à jour ligne après ligne et qui flush la table, je vois pas trop :-k

par finipe » 03 juil. 2007, 15:54

Oui, j'ai bien conscience de ce que je souhaite faire, mais il se trouve que dans le cas présent, la table dont je parle n'est liée à aucune autre, et l'identifiant de chaque ligne ne me sert qu'à des identifications ponctuelles (suppression, édition) : les changer n'aura donc aucun impact sur l'organisation et la persistance de mes données.

Toutefois, je présume qu'une telle fonction n'existe pas, étant donné que je viens presque de me faire fusiller pour hérésie manifeste :wink:

par albat » 03 juil. 2007, 15:43

J'avais en effet omis que zeus avait fait cet excellent tuto... :merci:

par pascaltje » 03 juil. 2007, 14:48

je crois que c'est ça :

http://www.phpfrance.com/forums/voir_sujet-27678.php

A+

Pascal

par albat » 03 juil. 2007, 14:10

:afraid:

Au risque de te paraître sévère, je dirai que ta question prouve
que tu n'as pas compris la nature et le but d'un identifiant auto-incrémenté.

La règle est bien simple : Un identifiant ne doit pas être modifié ou réattribué. :!: :non:

Plusieurs sujets ont déjà traité cette question.
Je crois me souvenir que Ryle avait contribué à fort bien exposer les explications. :-k
Si l'un d'entre vous peut retrouver le sujet en question... :pouce:

Modifier valeurs auto increment

par finipe » 03 juil. 2007, 13:49

Bonjour à tous.

J'ai une table MySql avec beaucoup, beaucoup d'enregistrements, et j'ai un système pour purger les moins pertinents de façon régulière. Existe-t-il une commande sql qui permette de renommer les champs id (en auto increment) de sorte qu'après la purge de la table, les n° d'id se suivent de nouveau et la valeur courante de l'auto increment soit remise à jour ?

Cela donnerait donc, en gros :

Avant purge : 1-2-3-4-5-6-7-8-9-10 (valeur auto increment : 11)
Après purge : 2-5-8-9-10 (valeur auto increment : 11)
Renommer id : 1-2-3-4-5 (valeur auto increment : 6)

Merci pour votre aide : )