Portail PHP

Forum de discussion et d'aide au php

Vous n'êtes pas identifié.

Annonce

Regles d'utilisation des forums : pensez à toujours les respecter si vous désirez obtenir des réponses rapides.
FAQ : pensez à toujours chercher dedans si la réponse à votre question est dedans.
Proposez vos news : si vous avez un evenement à annoncer
le chat : venez discuter de php.
 

#1 04-06-2005 17:13:34

magic.mimi
Membre
Lieu: Montpellier
Date d'inscription: 30-05-2005
Messages: 17
Site web

requete sql ya des craques pour me dire ?

je n'ai pas vu si vous aviez un forum "requete mysql"

Si je suis dans le mauvais forum désolé.

Voilà j'aimerais savoir s'il est possible de re numéroter automatiquement des champs grâce a une requete sql.

Exemple j'ai une table : matable_amoi dedans il y a un champ "lechamps" (type de donne "int") il y a 500 entrée dans cette table ainsi les champs sont numéroté par exemple 2 , 4, 6, 7, 8 ,10 etc... (x500 dans mon exemple) Est ce que je pourrais en faisant une requete sql les re numéroter 20 ,21 ,21, 23, 25 par exemple.
Mais je parle de renuméroté 1, passer a l'entrée suivante effacer l'entrée du champs existante le renuméroté 2, etc...

Je complique .... sachant que le champs "lechamps" est repris a l'identique dans une autre table dont le champs s'appelle par exemple "lechamp2" (en relation avec l'autre) est-ce que je pourrais en même temps faire de sorte de re numéroter a l'indentique dans l'autre table ? Sachant que .... on peut retrouvé dans l'autre table et "lechamp2" 2 fois l'entrée 10 par exemple.

Ainsi , si dans le champs "lechamps" la requete renomme 10 en 25 et que dans le champs "le champ2" de l'autre table il existe deux entrées "10" alors ces deux entrés sont aussi renommé "25" en "25" .

J'espère avoir été claire .

Merci de vos réponses par avance . ce sont les champs d'une base de donnée d'un forum ipb.

merci .

jean-michel

Hors ligne

 

#2 04-06-2005 17:27:11

kazhar
Ex-Webmaster
Lieu: Orléans
Date d'inscription: 25-06-2004
Messages: 3381
Site web

Re: requete sql ya des craques pour me dire ?

l'option auto_increment de mysql permet cela.
apres, tu peut obtenir l'identifiant d'une entrée avec mysql_insert_id juste apres avoir inséré la donnée.

Hors ligne

 

#3 04-06-2005 17:39:08

magic.mimi
Membre
Lieu: Montpellier
Date d'inscription: 30-05-2005
Messages: 17
Site web

Re: requete sql ya des craques pour me dire ?

heu je parles bien d'une requete myslq sur des données existante...

supprimer l'entrée d'un champs la remplacer par ... ensuite passer a l'entrée suivante et refaire la meme chose... et en meme temps renommer le champ en relation dans une autre table ...

Hors ligne

 

#4 04-06-2005 17:46:25

kazhar
Ex-Webmaster
Lieu: Orléans
Date d'inscription: 25-06-2004
Messages: 3381
Site web

Re: requete sql ya des craques pour me dire ?

eh bien, c'est encore plus simple...
il te suffit de ne pas supprimer l'entrée, de simplement faire un UPDATE...

modifier un enregistrement

Hors ligne

 

#5 04-06-2005 17:58:39

magic.mimi
Membre
Lieu: Montpellier
Date d'inscription: 30-05-2005
Messages: 17
Site web

Re: requete sql ya des craques pour me dire ?

je crois que tu as pas compris

il faut une seul requete qui fasse cela dans plusieurs entrée ...
champs suivant, champs suivant, etc...
et sur les champs en relation de deux tables  en meme temps.

je parle de cela directement sur la base de donnée

et je saurais pas construire seul....

j'ai un forum ipb je t'ai répondu pour ton sujet .

Hors ligne

 

#6 04-06-2005 18:15:06

kazhar
Ex-Webmaster
Lieu: Orléans
Date d'inscription: 25-06-2004
Messages: 3381
Site web

Re: requete sql ya des craques pour me dire ?

j'ai vu ta réponse merci.
pour une requete, que je sache, il n'est pas possible de modifier différentes entrées dans une seule requete sql (pas au niveau auxquel j'en suis en tout cas)
mais, vu comment est montée une requete d'update, je pense pas que ce soit possible...

Hors ligne

 

#7 05-06-2005 04:58:42

magic.mimi
Membre
Lieu: Montpellier
Date d'inscription: 30-05-2005
Messages: 17
Site web

Re: requete sql ya des craques pour me dire ?

Je voulais vous dire que j'ai résolu mon problème en le prenant par un autre bout...

en fait il me fallait importer dans une table, les données non identique (sauf en ce qui concerne un champ) d'une autre table. Même table, juste le nom qui change de la table.

Impossible sans que la requet sql me dise :" duplicate" Pas possible d'avoir un meme valeur dans ce champs de numérotaion.

donc, j'ai trouvé une solution que je ne savais pas possible, c'est à dire :

"UPDATE ibf3_topics SET tid=tid+1000;" il suffit que j'ajoute 10.000 a toutes les entrées de la table "tid" pour qu'elle n'ai plus le même nombre que la première table destiné à recevoir les importations...

ensuite je fais la meme requete sur le champs de la table lié a la première et les posts lié prennent eux aussi le même nom que les topics de mon forum.

Reste plus qu'a importer !

Hors ligne