2009-01-11 7 views
0

J'ai deux tables "Groupe" et "Client" et bien sûr deux entités "Groupe" et "Client". Et j'ai une autre table qui fait référence aux deux tables "CustomerGroupMember". J'utilise la table CustomerGroupMember pour un mappage plusieurs-à-plusieurs.Suppression d'un élément de plusieurs à plusieurs tables de référence?

Customer.hbm.xml

<!--Many to many--> 
    <bag name="CustomerGroups" table="CustomerGroupMember" cascade="all" lazy="true"> 
     <key column="CustomerId" /> 
     <many-to-many class="CustomerGroup" column="CustomerGroupId" /> 
    </bag> 

Group.hbm.xml

<bag name="Members" table="CustomerGroupMember" cascade="all" lazy="true"> 
     <key column="CustomerGroupId" /> 
     <many-to-many class="Customer" column="CustomerId" /> 
</bag> 

Je n'ai pas créé une entité et la cartographie pour la table "CustomerGroupMember".

Ma question est comment puis-je supprimer un CustomerGroupMember de la table CustomerGroupMember? Ai-je besoin de créer une entité pour CustomerGroupMember afin de supprimer CustomerGroupMember ou existe-t-il un autre moyen?

Merci beaucoup.

Répondre

1

Pour supprimer un élément de relation entre ces tables, vous devriez pouvoir référencer la ligne exacte dans la table de jonction qui n'est pas possible dans votre mappage actuel. Oui, vous devez créer une entité et un mappage pour la table CustomerGroupMember. Sans un mappage, comment pouvez-vous dire quelle ligne vous voulez supprimer?

+0

Juste ce que je pensais, merci beaucoup Mehrdad, encore une fois :) Je étais juste curieux s'il y a une autre façon. Merci –