update id 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 : update id auto-increment

par Jerem' » 22 mars 2005, 21:01

Au temps pour moi j'avais pas compris comme ça

C'est bizarre :o

par Cyrano » 22 mars 2005, 17:52

Ben oui, justement, c'est précisément ce que j'ai écrit si vous lisez bien: il faudra traiter toutes les lignes en partant de l'id le plus grand pour décaler.
Je serais très curieux de comprendre la nécessité de faire ça :-k

par Deis » 22 mars 2005, 17:49

D'après son explication il veut que si il modifie la ligne 2 elle deviennent la ligne 3 ( et que toute les lignes suivantes soient décallé ).

Avec un delete / insert sa prendra la dernière id + 1 et non pas l'id de la ligne + 1.

par Jerem' » 22 mars 2005, 16:59

Au lieu d'update, tu fais un INSERT avec les nouvelles données et un DELETE de l'ancien enregistrement :idea:

par Cyrano » 22 mars 2005, 16:13

ça marche pas ce truc: si tu incrémentes "manuellement" une valeur de clé primaire, tu vas te heurter à l'existence d'une autre clé portant déjà le numéro que tu veux mettre... Tu peux faire tous les scripts que tu voudras, il faudrait, pour que ça marche, que tu fasse un update sur toutes les lignes de la table en commençant par le numéro le plus grand: en l'incrémentant, tu libères la place pour incrémenter la clé inférieure etc...

par hak » 22 mars 2005, 16:00

c'est bon j'ai trouvé un truc :
c'est un peu tiré par les cheveux mais ça marche si ça peut aider qqun , je reprend la prog de qqun d'autre et je suis obligé de faire avec et m'adapter à ce qu'il a fait.

Code : Tout sélectionner

$query="select id from table order by id desc limit 0,1"; $result=mysql_query($query)or die("requete erreur"); $num_resultas = mysql_num_rows($result); if ($num_resultas) { $row = mysql_fetch_array($result); $id ="$row[id]"; $idu=$id+1; $query =" update table set id='$idu', etc etc etc ...";

par mere-teresa » 21 mars 2005, 21:46

Pourquoi tu ne pourrais pas ?

par hak » 21 mars 2005, 21:05

merci de ta reponse c'est ce que je craignais .
bon courage

par ayayaaa » 21 mars 2005, 21:02

A ma connaissance non tu ne peux pas.

Mais quel est l'intérêt de faire ca???

Y a peut être une autre solution?

AYAYAAA

par Invité » 21 mars 2005, 20:21

alors pour etre plus précis .
je fais un insert dans une base de données , l'identifiant est auto incrementé , bon la rien de speciale , en revanche ma question est si je fais un update sur cette meme ligne est ce que je peux le faire sur l'identifiant . exemple :

insert :
-----------
ligne1 : id=56 , nom=nom , etc etc
ligne2 : id=57, nom=nom , etc etc
ligne3 : id=58 , nom=nom , etc etc
ligne4 : id=59 , nom=nom , etc etc
ligne5 : id=60 , nom=nom , etc etc
...etc
..etc
lignen : id=n , nom=nom , etc etc

je veux faire un update sur la ligne 1 :
est ce que celle ci peut devenir comme ça :
lignen+1 : id=n+1 , nom=autrenom , etc etc

j'espere que je me suis fait comprendre :(

par guizmow » 21 mars 2005, 17:37

keske tu appel un update autoincrementé???

update id auto-increment

par hak » 21 mars 2005, 17:21

bonjour

je voudrai savoir si on pouvait faire un update auto-incrementé sur un id auto-incrementé ?? je crois que ce n'est pas possible mais bon l'epoir fait vivre :lol: .

merci de vos reponses .