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 :

[HQL] Select avec jointure


Sujet :

Hibernate Java

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Février 2006
    Messages
    88
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 88
    Points : 64
    Points
    64
    Par défaut [HQL] Select avec jointure
    Bonjour,

    Je débute sous hibernate et malgrès la doc et les différentes recherches que j'ai pu faire, je ne vois pas ce qui cloche.

    J'ai une table d'articles.
    Un des champs est une clé étrangère vers le libellé de l'article (nom botanique).

    J'arrive à créer une requête simple 'from P_articleImpl as art'.
    J'arrive à créer une requête avec jointure 'from P_articleImpl as art, P_nombotaImpl as nb where art.nombota=nb.id'.

    Le problème de cette dernière requête, c'est qu'elle renvoie tous les champs art + nb.

    Je souhaite uniquement récuperer les champs de art.

    J'ai donc tenté plusieurs syntaxe mais toutes donnent une erreur différente :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    select P_articleImpl.* from P_articleImpl as art, P_nombotaImpl as nb where art.nombota=nb.id
     
    select P_articleImpl from P_articleImpl as art, P_nombotaImpl as nb where art.nombota=nb.id
     
    select com.delbardpro.production.persistence.parametres.article.P_articleImpl from P_articleImpl as art, P_nombotaImpl as nb where art.nombota=nb.id
    Aucune de ces syntaxes ne fonctionne.

    Voici mon fichier de mapping :

    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
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    <?xml version="1.0" encoding="UTF-8"?>
    <!--
         Attention: Generated code! Do not modify by hand!
         Generated by: hibernate.hbm.xml.vsl in andromda-hibernate-cartridge.
      -->
    <!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
              "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
     
    <hibernate-mapping default-cascade="none">
        <class name="com.delbardpro.production.persistence.parametres.article.P_articleImpl" table="P_ARTICLE" dynamic-insert="false" dynamic-update="false">
            <id name="id" type="java.lang.Long" unsaved-value="null">
                <column name="ID" sql-type="NUMBER(19)"/>
                <generator class="sequence">
                    <param name="sequence">P_ARTICLE_SEQ</param>
                </generator>
            </id>
            <property name="codeSEM" type="java.lang.String">
                <column name="codeSEM" not-null="false" unique="true" sql-type="VARCHAR2(6)"/>
            </property>
            <property name="codePROD" type="java.lang.Long">
                <column name="codePROD" not-null="true" unique="true" sql-type="NUMBER(5)"/>
            </property>
            <property name="FPA" type="java.lang.Long">
                <column name="FPA" not-null="true" unique="false" sql-type="NUMBER(19)"/>
            </property>
            <property name="TAILLE" type="java.lang.Long">
                <column name="TAILLE" not-null="true" unique="false" sql-type="NUMBER(19)"/>
            </property>
            <property name="AGE" type="java.lang.Long">
                <column name="AGE" not-null="true" unique="false" sql-type="NUMBER(19)"/>
            </property>
            <property name="QUALITE" type="java.lang.Long">
                <column name="QUALITE" not-null="true" unique="false" sql-type="NUMBER(19)"/>
            </property>
            <property name="PORTEGREFFE" type="java.lang.Long">
                <column name="PORTEGREFFE" not-null="true" unique="false" sql-type="NUMBER(19)"/>
            </property>
            <property name="INTERMEDIAIRE" type="java.lang.Long">
                <column name="INTERMEDIAIRE" not-null="true" unique="false" sql-type="NUMBER(19)"/>
            </property>
            <property name="FAMILLEPROD" type="java.lang.Long">
                <column name="FAMILLEPROD" not-null="true" unique="false" sql-type="NUMBER(19)"/>
            </property>
            <many-to-one name="nombota" class="com.delbardpro.production.persistence.parametres.nomBota.P_nombotaImpl" foreign-key="P_article_nb_FK" lazy="proxy" fetch="select">
                <column name="NOMBOTANIQUE" not-null="true" sql-type="NUMBER(19)"/>
            </many-to-one>
        </class>
    </hibernate-mapping>
    Une idée, une suggestions ?
    Je continue de chercher de mon côté ...

    Merci

  2. #2
    Membre du Club
    Profil pro
    Inscrit en
    Février 2006
    Messages
    88
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 88
    Points : 64
    Points
    64
    Par défaut
    Bon, le fait de relire le message m'a donné une idée et ça à l'air de marcher ...

    Tout simplement :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    select art from P_articleImpl as art, P_nombotaImpl as nb where art.nombota=nb.id
    Je réouvre si besoin mais ca devrait être bon

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

Discussions similaires

  1. SELECT avec jointures ?
    Par light_at_the_end dans le forum Langage SQL
    Réponses: 5
    Dernier message: 20/08/2007, 15h27
  2. Requete SELECT avec jointures
    Par escteban dans le forum Requêtes
    Réponses: 10
    Dernier message: 18/04/2007, 12h16
  3. [c#]commande Select avec jointure de deux tables
    Par chorokari dans le forum Accès aux données
    Réponses: 6
    Dernier message: 18/10/2006, 14h47
  4. Delete + selection avec jointure
    Par kluh dans le forum Oracle
    Réponses: 4
    Dernier message: 15/11/2005, 10h44
  5. Problème performance SELECT avec jointure
    Par Netgamer dans le forum Requêtes
    Réponses: 7
    Dernier message: 05/08/2005, 10h20

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