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 :

Requete sur un champ de type collection


Sujet :

Hibernate Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2007
    Messages
    75
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Avril 2007
    Messages : 75
    Par défaut Requete sur un champ de type collection
    Bonjour,
    j'ai une relation n,n entre MaClasse1 et MaClasse2, et je veux recuperer les enregistrements de type MaClasse1 qui ne sont pas rattachés a l'instance maClasse2. J'ai fait cette requete :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    public static Collection trouverInstancesNonAttaches(Session session, MaClasse2 maClasse2) throws Exception, HibernateException {
    Query query = session.createQuery("SELECT distinct monObjet
    FROM fr.monPackage.MaClasse1 as monObjet
    inner join monObjet.champsMaClasse2 as maClasse2
    where maClasse2 != :maClasse2"  );
    query.setParameter("maClasse2", maClasse2);
    return query.list();
    }
    Mais cela me renvoie toutes les instances de MaClasse1 meme celles qui sont rattachés à maClasse2 et à une autre instance de MaClasse2,Mais non celles qui sont rattachés seulement à maClasse2. Et c'est pas ça ce que je voulais. j'aimerais eliminer tous ce qui ont une relation avec maClasse2.

    Merci de me dire la requete qu'il faut,

  2. #2
    Membre émérite Avatar de Gardyen
    Homme Profil pro
    Bio informaticien
    Inscrit en
    Août 2005
    Messages
    637
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Bio informaticien

    Informations forums :
    Inscription : Août 2005
    Messages : 637
    Par défaut
    essaye d'utiliser plutôt le mot clé elements quand tu as affaire à des associations

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    SELECT distinct monObjet
    FROM fr.monPackage.MaClasse1 as monObjet
    WHERE :maClasse2 not in elements(monObjet.champsMaClasse2)

  3. #3
    Membre confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2007
    Messages
    75
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Avril 2007
    Messages : 75
    Par défaut
    Merci pour votre reponse, J'ai ajouté le mot cle elements, mais j'ai cette erreur :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    org.hibernate.QueryException: could not resolve property: elements of:fr.monPackage........ []

  4. #4
    Membre émérite Avatar de Gardyen
    Homme Profil pro
    Bio informaticien
    Inscrit en
    Août 2005
    Messages
    637
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Bio informaticien

    Informations forums :
    Inscription : Août 2005
    Messages : 637
    Par défaut
    quelle requête as tu essaye ?

    parce que elements est un mot clé et ne devrait pas être lu en tant que propriété.

    quelle version de hibernate utilises-tu ?

  5. #5
    Membre confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2007
    Messages
    75
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Avril 2007
    Messages : 75
    Par défaut
    j'utilise hibernate-3.0.5, peut etre ceci dû du faite que je n'ai pas passeé un champ de type collection, si je passe un champs de type collection ça marche bien, Donc merci bien pour 7 aide

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

Discussions similaires

  1. requete sql avec between sur des champs de type Date
    Par ersoufiane dans le forum Langage SQL
    Réponses: 2
    Dernier message: 02/08/2006, 19h43
  2. UPDATE en ajoutant un 0 sur un champ de type "char"
    Par doum2 dans le forum Requêtes
    Réponses: 1
    Dernier message: 08/03/2006, 14h22
  3. Jointure sur un champ de type nchar ?
    Par webtheque dans le forum MS SQL Server
    Réponses: 8
    Dernier message: 09/02/2005, 14h46
  4. select sur un champ de type LONG
    Par ppd dans le forum Langage SQL
    Réponses: 2
    Dernier message: 03/09/2004, 18h19
  5. [Doublons] Unicité sur un champ de type TEXT
    Par PyRoFlo dans le forum Requêtes
    Réponses: 11
    Dernier message: 01/09/2004, 09h56

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