+Doctrine : connexionà une base via un DBLink
Bonjour,
Je rencontre un problème pour me connecter à une table d'une base distante via un DBLink...
Je m'explique: Lors de cette requête
Code:
1 2 3 4 5 6 7
| //..\projets\action\action.class.php
$this->acteurs=Doctrine_Query::CREATE()
->select('A.C_UTIL, A.TYPROLE')
->addSelect('(SELECT U.N_UTIL FROM UTILISATEURISI U WHERE U.C_UTIL=A.C_UTIL) as nom')
->from('ACTEUR A')
->where('A.IDPROJET =?',$request->getParameter('idprojet'))
->execute(); |
Je tente de me connecter à la base distante ISILOG qui a la table UTILISATEUR (nommée UTILISATEURISI dans le schema YAML pour éviter les interférences avec d'autres tables) via un DBLINK "DB_ISILOG.VILLE.LOCAL" (qui a lui même été spécifié via oracle et dans le schema YAML correspondant, comme ceci)
Code:
1 2 3 4 5 6
| UTILISATEURISI:
connection: SIGIP
tableName: UTILISATEUR@DB_ISILOG.VILLE.LOCAL
columns:
// ayant trois schémas ayant chacun entre 500 et 1000 lignes, vous comprendrez que je ne mette pas tout ;) |
Le problème, c'est que lors de l'envoi de la requête, il me génère une erreur 500 avec le message suivant :
Citation:
ORA-02019: description de connexion pour BdD éloignée introuvable : SELECT a.idprojet AS a__idprojet, a.idtiers AS a__idtiers, a.c_util AS a__c_util, a.c_util AS a__c_util, (SELECT u.n_util AS u__n_util FROM
UTILISATEUR@DB_ISILOG.VILLE u WHERE (u.c_util = a.c_util)) AS a__0 FROM ACTEUR a WHERE (a.idprojet = :oci_b_var_1)
Il a tronqué le nom du DBLink, et je ne peux du coup pas valider ma requete.
Y-a-t-il un moyen de corriger ce problème, ou est ce que je fais quelque chose de mal?
merci d'avance de vos éventuelles réponses ;)
Dash777.