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

Hibernate Java Discussion :

comment utiliser 3 tables avec plusieurs base de donnes ?


Sujet :

Hibernate Java

  1. #1
    Membre confirmé
    Avatar de jeha
    Inscrit en
    Octobre 2005
    Messages
    127
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 127
    Par défaut comment utiliser 3 tables avec plusieurs base de donnes ?
    Bonjour,
    Je suis actuellement dans un stage de fin d’étude sur une application J2EE strouts +spring+hibernat

    Le problème dans mon stage est que la société utilise trois Base de donne sur sql serveur et utiliser une application .net qui fait appelle a des requêtes sur des tables qui sont dans plusieurs base de donne

    Par exemple table utilisateur dans la base1 et table valeur dans la base2 , avec une requete de type jointure.

    Un exemple d’une requete sqlserveur :


    SELECT CONVERT(nvarchar, or_detail.ORD_Date, 103) AS DATE, CASE WHEN or_detail.ORD_Marche='C' then 'CENTRAL' else 'DE BLOC' end AS MARCHE, CASE WHEN or_detail.ORD_Sens = 'A' THEN 'ACHAT' WHEN or_detail.ORD_Sens = 'V' THEN 'VENTE' ELSE or_detail.ORD_Sens END AS SENS,or_detail.Or_Statut AS STATUT, or_detail.ORD_Sdb AS SDB, mc_gen.dbo.affilie.Aff_Nom AS 'SDB Libelle', titulaire.Tit_RIB_Compte AS TITULAIRE,titulaire.Tit_Nom AS ' NOM.TIT ', mc_gen.dbo.valeur.Val_AMC_Code AS VALEUR, mc_gen.dbo.valeur.Val_Lib_court AS LIBELLE, or_detail.ORD_Qte AS QUANTITE, CASE WHEN or_detail.ORD_Cours = 0 THEN 'Au mieux' ELSE CONVERT(nvarchar, or_detail.ORD_Cours) END AS COURS FROM or_detail LEFT OUTER JOIN mc_gen.dbo.valeur ON or_detail.ORD_Val = mc_gen.dbo.valeur.Val_ISIN_Code LEFT OUTER JOIN titulaire ON or_detail.ORD_Tit = titulaire.Tit_Code LEFT OUTER JOIN mc_gen.dbo.affilie ON or_detail.ORD_Sdb = mc_gen.dbo.affilie.Aff_Code where"...
    Est-ce que vous pouvez me dire comment je peut exécuter une requet join sur trois table si chaque table est dans une base de donne

    Table or_detail dans base mc_001
    Table affilie dans base mc_gen
    Table titulaire dans base..

    Merci pour vos réponses !

  2. #2
    Inactif  
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    2 189
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2006
    Messages : 2 189
    Par défaut
    utilise jdbcTemplate par spring avec hibernate je doute que cela soit possible a moins que tu puisses spécifier plusieurs datasource et récupéréer des sessionFactory pour chacune des datasources d effectué une requete individuelle pour chaque base et d ensuite utilisé ces résultats dans d autres requetes en tant que paramètres

    mais avec jdbcTemplate c'est plus simple ...

  3. #3
    Membre confirmé
    Avatar de jeha
    Inscrit en
    Octobre 2005
    Messages
    127
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 127
    Par défaut
    v vrais que j'ai testé l'utilisation de 2 sessionFactory pour chaque base ce qui me donne une connexion séparer de l'autre !!!

    donc est ce qu'on peut avoir un exemple sur l'utilisation de 2 base de donnée dans une seule requête...

    et ce qui m'étonne que dotnet a pu faire une connexion avec 2 base de donnée et exécuter une requête qui ressemble les 2.

    et merci

  4. #4
    Membre confirmé
    Avatar de jeha
    Inscrit en
    Octobre 2005
    Messages
    127
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 127
    Par défaut
    Comment résoudre ce problème ? SVP STP

  5. #5
    Expert confirmé
    Avatar de sinok
    Profil pro
    Inscrit en
    Août 2004
    Messages
    8 765
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Août 2004
    Messages : 8 765
    Par défaut
    De ce que je comprends à ton problème tu devrais te diriger vers l'utilisation d'hibernate shards qui est prévu pour la gestion de multiples sessions de bases.

    Sinon une autre solution: http://jblooming.blogspot.com/2008/0...databases.html

  6. #6
    Membre confirmé
    Avatar de jeha
    Inscrit en
    Octobre 2005
    Messages
    127
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 127
    Par défaut
    on fin

    j'ai trouve la solution dans la forum de hibernate.org

    merci pour tous et ce lien pour les gents qu'ont le même problème comme moi

    http://forum.hibernate.org/viewtopic.php?t=991422



    Bonjour,

    Pour résoudre ce problème nous avons créé des vues d'une base sur l'autre et mappé les vues comme étant des tables dans Hibernate.

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

Discussions similaires

  1. [2.x] [FosUserBundle] Utilisation avec plusieurs bases de données
    Par fabienlege dans le forum Symfony
    Réponses: 1
    Dernier message: 18/01/2013, 11h17
  2. Réponses: 3
    Dernier message: 21/01/2009, 09h35
  3. Réponses: 3
    Dernier message: 03/10/2007, 00h59
  4. Réponses: 3
    Dernier message: 22/09/2007, 13h56

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