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 :

Problème Requête Imbriquée


Sujet :

Hibernate Java

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 9
    Points : 13
    Points
    13
    Par défaut Problème Requête Imbriquée
    Bonjour

    Je cherche à créer une requête imbriqué de la manière suivante :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    // Ajout des jointures sur d'autres tables
    Criteria vCrit = getSession().createCriteria(HbPoste.class);
    vCrit.setFetchMode("histoPosteZgs", FetchMode.JOIN);
     
     
    //BLOC 1
    //Criteria vCritHistoPoste = vCrit.createCriteria("histoPosteZgs");
    //vCritHistoPoste.add(Expression.neProperty("id", "id"));	
     
    vCrit.add(Expression.or(Expression.gt("pceDateFin", vDateDuJour), Expression
                    .isNull("pceDateFin")));
     
     
    //BLOC 2
    /* vCrit.add(Expression.and(Expression.or(
    Expression.gt("pceDateFin", vDateDuJour), Expression.isNull("pceDateFin")),
    Expression.neProperty("histoPosteZgs.id.poste.id", "id")));
    */
    Je pars de ma table Poste et je recherche tous les postes qui ne sont pas dans ma table d'association histoPosteZgs qui possède une clef primaire composée

    Si j'utilise BLOC 1 je ne recupère pas le données que je veux puisque je suis sur l'id de ma table d'assoc.

    Si j'utilise BLOC 2 j'ai une erreur du type histoPosteZgs.id.poste.id unknown property

    Si quelqu'un peut m'éclairer.

    Merci d'avance

  2. #2
    Membre régulier Avatar de 17mounir
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    101
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Avril 2005
    Messages : 101
    Points : 78
    Points
    78
    Par défaut
    Pour faire des criteres sur les proprietes des objets fils il faut faire des criteria.createCriteria(OBJET_FILS).add(Restriction...(sur proprietes de OBJET_FILS))

    Exe :

    OBJET_PERE
    ----prop1
    ----prop2
    ----PROP_A (objet a part)

    avec

    PROP_A
    ----propA1
    ----propA2

    il faut faire

    criteria = createCriteria(sur OBJET_PERE);
    criteria.add(Restrictions.eq(prop1, "123"); // containtes de niveau1

    criteria.createCriteria(PROP_A).add(Restrictions.eq(propA1, "abc")); // contraines de niveau +1

    j'ai pas teste mais c'est comme ça que je fais et ça marche...

    J'espere que ça te fera avancer

Discussions similaires

  1. Problème requête imbriquée?
    Par mad_martigan dans le forum Langage SQL
    Réponses: 4
    Dernier message: 12/02/2009, 10h58
  2. Problème requête imbriquée
    Par Alexandre` dans le forum Requêtes et SQL.
    Réponses: 3
    Dernier message: 17/03/2008, 10h51
  3. [MySQL] Problème requête imbriquée
    Par Little_flower dans le forum PHP & Base de données
    Réponses: 7
    Dernier message: 21/08/2007, 18h58
  4. Problème requêtes imbriquées
    Par jean-paul lepetit dans le forum Requêtes et SQL.
    Réponses: 12
    Dernier message: 20/03/2007, 10h32
  5. Problème Requête imbriquée
    Par EddieN dans le forum Langage SQL
    Réponses: 5
    Dernier message: 11/10/2006, 07h52

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