IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PHP & Base de données Discussion :

Mise à jour d'une table à partir d'une autre table [MySQL]


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de BenoitDenis
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    536
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Sarthe (Pays de la Loire)

    Informations forums :
    Inscription : Avril 2005
    Messages : 536
    Par défaut Mise à jour d'une table à partir d'une autre table
    Bonjour, je viens vers vous car je n'arrive pas à former une requête de mise à jour, je ne vois pas comment faire...

    De plus mes 2 tables sont sur le même serveur, mais pas sur la même base, après je peut dupliquer ma 1ere table dans la seconde base si il y a besoin...

    J'ai une table T1 dans une base BDD1 contenant entre autre champs les champs "reference" et "prix".

    J'ai une table T2 dans une base BDD2 contenant entre autre les champs "reference" et "prix".

    Je veux mettre à jour les prix de T2 à partir des prix de T1.
    Petite subtilité, une référence de T1 peut avoir plusieurs concordances dans T2 sous la forme de "référence %%%"

    Merci d'avance à tous de votre aide en espérant avoir été clair

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    Je me lance :
    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    UPDATE T2 JOIN T1 ON T2.reference=T1.reference SET T2.prix = T1.prix
    (fait une sauvegarde hein )
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Membre éclairé Avatar de BenoitDenis
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    536
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Sarthe (Pays de la Loire)

    Informations forums :
    Inscription : Avril 2005
    Messages : 536
    Par défaut
    Hum je vois a peu près le principe mais la ca ne prends pas en compte que mes 2 références ne soit pas exactement pareil si ?

  4. #4
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    Pourquoi tes clefs ne sont pas uniformes ?

    Je pense qu'on peut faire un truc totalement affreux comme :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    UPDATE T2 JOIN T1 ON T2.reference='Référence ' &  T1.reference SET T2.prix = T1.prix
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  5. #5
    Membre éclairé Avatar de s.lennon
    Inscrit en
    Juin 2009
    Messages
    66
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations forums :
    Inscription : Juin 2009
    Messages : 66
    Par défaut
    Bonjour.

    Je ne suis pas sûre, mais si tes deux tables sont sur deux BDD, un simple
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     UPDATE T2 JOIN T1 ON T2.reference=T1.reference SET T2.prix = T1.prix
    ne suffira pas, si ? Il va bien falloir préciser quelque part que tu travailles sur deux BDD distinctes, non ?

    Tu veux le faire en une seule requête SQL ? Parce que sinon en PHP ça doit être un peu plus simple je pense.

  6. #6
    Membre éclairé Avatar de BenoitDenis
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    536
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Sarthe (Pays de la Loire)

    Informations forums :
    Inscription : Avril 2005
    Messages : 536
    Par défaut
    Je disais que je pouvais si besoin dupliquer T1 sur BDD2

    Effectivement j'ai pensé au Php mais pour une fois j'avoue que je vois pas bien l'algorithme a suivre....

  7. #7
    Membre éclairé Avatar de BenoitDenis
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    536
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Sarthe (Pays de la Loire)

    Informations forums :
    Inscription : Avril 2005
    Messages : 536
    Par défaut
    Citation Envoyé par sabotage Voir le message
    Pourquoi tes clefs ne sont pas uniformes ?

    Je pense qu'on peut faire un truc totalement affreux comme :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    UPDATE T2 JOIN T1 ON T2.reference='Référence ' &  T1.reference SET T2.prix = T1.prix
    Oups j'avais pas vu la remarque
    Ce n'est pas moi qui ai créé les bases, je fait de la récup de code, et je sais pas pourquoi mais les références ne sont pas les clés de table...y'a un auto increment en clé

  8. #8
    Membre éclairé Avatar de s.lennon
    Inscrit en
    Juin 2009
    Messages
    66
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations forums :
    Inscription : Juin 2009
    Messages : 66
    Par défaut
    Bonjour.

    Tu veux donc avec ta requête parcourir toute ta table T1 pour actualiser T2 ? Alors pour les BDD différentes, Sabotage disait de noter ta table BDD1.T1 et BDD2.T2 au lieu de juste T1 et T2 je crois... Ensuite, pour la requête, euh ... Là comme ça je ne vois...

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 2
    Dernier message: 13/05/2014, 12h46
  2. Réponses: 9
    Dernier message: 23/11/2010, 10h10
  3. [WD14] mise à jour d'un enregistrement à partir d'une autre table
    Par piogo113 dans le forum WinDev
    Réponses: 9
    Dernier message: 05/05/2010, 19h06
  4. Réponses: 6
    Dernier message: 29/06/2006, 14h00
  5. [VB.NET] Mise à jour d'un site à partir d'une application
    Par boulete dans le forum Windows Forms
    Réponses: 2
    Dernier message: 07/04/2006, 12h15

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo