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 :

Requête sur 2 tables dans 2 bases différentes [MySQL]


Sujet :

PHP & Base de données

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Février 2009
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 7
    Points : 3
    Points
    3
    Par défaut Requête sur 2 tables dans 2 bases différentes
    Bonjour,

    J'essaie de faire fonctionner la requête suivante
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT * FROM table1 LEFT JOIN table2 ON (table2.champ = table1.champ)
    sur 2 tables qui se trouvent dans 2 bases différentes :
    - table1 est dans la 1re base de données BD1
    - table2 est dans la 2e base de données BD2

    J'ouvre les connections vers les 2 bases simultanément :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $linkBD1 = mysql_connect(host1, user1, pwd1)
    $linkBD2 = mysql_connect(host2, user2, pwd2, TRUE)
    Mon pb est comment indiquer les 2 liens (linkBD1 + linkBD2) dans l'envoi de cette requête avec la fonction
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    mysql_query($requete, $linkBDn)
    Merci pour votre aide.

  2. #2
    Modérateur

    Avatar de CinePhil
    Homme Profil pro
    Ingénieur d'études en informatique
    Inscrit en
    Août 2006
    Messages
    16 799
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur d'études en informatique
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2006
    Messages : 16 799
    Points : 34 031
    Points
    34 031
    Billets dans le blog
    14
    Par défaut
    Si, comme le laissent supposer les valeurs de tes $link, les deux BDD sont sur deux serveurs différents, c'est impossible !

    Si les deux BDD sont sur le même serveur, une seule connexion suffit et il suffit de préfixer les tables par le nom de la BDD :
    Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    SELECT -- les colonnes nécessaires et pas étoile !
    FROM bd1.table1 t1
    INNER JOIN bd2.table2 t2 ON t2.une_colonne = t1.une_autre_colonne

    Et au passage, inutile de mettre la condition de jointure entre parenthèses.
    Philippe Leménager. Ingénieur d'étude à l'École Nationale Supérieure de Formation de l'Enseignement Agricole. Autoentrepreneur.
    Mon ancien blog sur la conception des BDD, le langage SQL, le PHP... et mon nouveau blog sur les mêmes sujets.
    « Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément ». (Nicolas Boileau)
    À la maison comme au bureau, j'utilise la suite Linux Mageïa !

  3. #3
    Candidat au Club
    Profil pro
    Inscrit en
    Février 2009
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 7
    Points : 3
    Points
    3
    Par défaut
    Merci, CinePhil.

    J'ai installé les 2 BDD sur le même serveur, et en effet, cela fonctionne.

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

Discussions similaires

  1. Réponses: 21
    Dernier message: 16/02/2011, 13h21
  2. Requête sur 2 tables dans 2 BDD différentes
    Par chciken92000 dans le forum MS SQL Server
    Réponses: 4
    Dernier message: 26/06/2008, 10h35
  3. Réponses: 14
    Dernier message: 04/12/2006, 11h22
  4. Réponses: 7
    Dernier message: 21/08/2006, 16h27
  5. Réponses: 1
    Dernier message: 27/06/2006, 13h09

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