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
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 : Sélectionner tout - Visualiser dans une fenêtre à part
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();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 :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6UTILISATEURISI: 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 ;)
Il a tronqué le nom du DBLink, et je ne peux du coup pas valider ma requete.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)
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.
Partager