Précédent   Forum des professionnels en informatique > PHP > Outils > Zend > Zend Framework > Zend_Db
Zend_Db Forum d'entraide pour le composant Zend_Db du Zend Framework (création de requêtes, abstraction, ORM etc.). Avant de poster -> FAQ Zend_Db.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 31/07/2007, 15h06   #1
Membre habitué
 
Inscription : février 2004
Messages : 161
Détails du profil
Informations personnelles :
Âge : 28
Localisation : France, Gironde (Aquitaine)

Informations forums :
Inscription : février 2004
Messages : 161
Points : 114
Points : 114
Par défaut Requête sur 2 bases

Bonjour à tous

Je travaille avec le Zend Framework. Je me connecte à une base sans problème. Et j'effectue mes requetes sur cette base sans problème.

Mon problème est que je souhaite faire une requete avec une jointure sur une autre base. Je souhaiterais donc me connecter sur les 2 bases en même temps.

Selon cette discussion :
http://www.developpez.net/forums/d42727/bases-donnees/langage-sql/pb-jointure/
C'est possible en sql.
Mais je ne sais pas comment procéder avec Zend.

Merci d'avance pour vos réponses.
eowene est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/07/2007, 16h40   #2
Rédacteur
 
Avatar de Yogui
 
Homme Guillaume Rossolini
Directeur technique
Inscription : février 2004
Messages : 13 720
Détails du profil
Informations personnelles :
Nom : Homme Guillaume Rossolini
Localisation : France

Informations professionnelles :
Activité : Directeur technique

Informations forums :
Inscription : février 2004
Messages : 13 720
Points : 17 355
Points : 17 355
Salut

Tu ne peux pas utiliser le design pattern Singleton. As-tu essayé simplement en utilisant deux objets $db ?
http://zend-framework.developpez.com/faq/?page=db#db
__________________
Mes articles - Zend Certified Engineer (PHP + Zend Framework)
Ressources PHP - Ressources Zend Framework
Yogui est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/08/2007, 15h49   #3
Membre éclairé
 
Homme Yann
Développeur Web
Inscription : avril 2005
Messages : 280
Détails du profil
Informations personnelles :
Nom : Homme Yann
Âge : 27
Localisation : France, Ille et Vilaine (Bretagne)

Informations professionnelles :
Activité : Développeur Web

Informations forums :
Inscription : avril 2005
Messages : 280
Points : 366
Points : 366
Envoyer un message via MSN à yannux
En faisant la requête à toi même ?

http://framework.zend.com/manual/en/...statement.html
yannux est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/08/2007, 16h40   #4
Membre habitué
 
Inscription : février 2004
Messages : 161
Détails du profil
Informations personnelles :
Âge : 28
Localisation : France, Gironde (Aquitaine)

Informations forums :
Inscription : février 2004
Messages : 161
Points : 114
Points : 114
Je peux me connecter à mes 2 bases en utilisant 2 objet $db. Ca c'est ok, ça fonctionne. Mais ma question est comment faire une requete sur les 2 bases.

Par exemple,
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
BASE1
--------
Table Toto
------------
id_toto
nom_toto
adresse_toto
 
BASE2
-------
Table Titi
-----------
id_titi
categorie
autre_infos
Les table toto et titi contiennent toutes les 2 des infos sur les personnes. Donc, id_toto = id_titi.

Et au moment de la recherche, j'ai un champ nom et un champ categorie.
Je souhaiterais donc pouvoir selectionner les personnes dans les tables titi et toto avec nom_toto = nom_que_je_recherche et categorie = categorie_que_je_recherche.

En clair, je voudrais faire une jointure.
Mais je n'y arrive pas avec mes 2 bases en même temps.

Voici mes requetes :
Code :
1
2
3
 
$req = "SELECT * FROM Toto WHERE nom_toto = '$le_nom'";
$result = $this->db1->query($req);
Et
Code :
1
2
3
 
$req = "SELECT * FROM Titi WHERE categorie = '$la_categorie'";
$result = $this->db2->query($req);
Ma question est, puis-je faire tout ceci en 1 seule requete ou pas ?
J'espere avoir été à peu près claire.
Merci d'avance.
eowene est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/08/2007, 16h46   #5
Rédacteur
 
Avatar de Yogui
 
Homme Guillaume Rossolini
Directeur technique
Inscription : février 2004
Messages : 13 720
Détails du profil
Informations personnelles :
Nom : Homme Guillaume Rossolini
Localisation : France

Informations professionnelles :
Activité : Directeur technique

Informations forums :
Inscription : février 2004
Messages : 13 720
Points : 17 355
Points : 17 355
Non, c'est impossible.
__________________
Mes articles - Zend Certified Engineer (PHP + Zend Framework)
Ressources PHP - Ressources Zend Framework
Yogui est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/08/2007, 16h57   #6
Membre habitué
 
Inscription : février 2004
Messages : 161
Détails du profil
Informations personnelles :
Âge : 28
Localisation : France, Gironde (Aquitaine)

Informations forums :
Inscription : février 2004
Messages : 161
Points : 114
Points : 114
Ok merci !
eowene est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/08/2007, 11h06   #7
Membre éclairé
 
Homme Yann
Développeur Web
Inscription : avril 2005
Messages : 280
Détails du profil
Informations personnelles :
Nom : Homme Yann
Âge : 27
Localisation : France, Ille et Vilaine (Bretagne)

Informations professionnelles :
Activité : Développeur Web

Informations forums :
Inscription : avril 2005
Messages : 280
Points : 366
Points : 366
Envoyer un message via MSN à yannux
Euh pourquoi c'est pas possible ? :s
yannux est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/08/2007, 11h11   #8
Rédacteur
 
Avatar de Yogui
 
Homme Guillaume Rossolini
Directeur technique
Inscription : février 2004
Messages : 13 720
Détails du profil
Informations personnelles :
Nom : Homme Guillaume Rossolini
Localisation : France

Informations professionnelles :
Activité : Directeur technique

Informations forums :
Inscription : février 2004
Messages : 13 720
Points : 17 355
Points : 17 355
Une BDD = un identifiant de connexion.
Une requête SQL se fait nécessairement sur un seul identifiant de connexion.

Essaie avec les fonctions classiques, tu verras bien ce que cela donnne
__________________
Mes articles - Zend Certified Engineer (PHP + Zend Framework)
Ressources PHP - Ressources Zend Framework
Yogui est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/08/2007, 16h26   #9
Membre éclairé
 
Homme Yann
Développeur Web
Inscription : avril 2005
Messages : 280
Détails du profil
Informations personnelles :
Nom : Homme Yann
Âge : 27
Localisation : France, Ille et Vilaine (Bretagne)

Informations professionnelles :
Activité : Développeur Web

Informations forums :
Inscription : avril 2005
Messages : 280
Points : 366
Points : 366
Envoyer un message via MSN à yannux
Bah ça dépend...Si ton utilisateur à les droits sur la base.....
On parle de 2 installations MYSQL différentes ou de 2 bases dans une même installation ??
yannux est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 08h23.


 
 
 
 
Partenaires

Hébergement Web