我正在使用休眠多对多关联。我有 3 张桌子(STUDENT、COURSE 和 STUDENT_COURSE)。3张表中,2张为主表,1张为提供关系的中间表。当从 STUDENT 中删除记录时,从 STUDENT_COURSE 中删除相应的映射。我的要求是它甚至应该从 COURSE 表中删除记录。考虑 STUDENT_COURSE 条目如下:
S-Id C_ID
101 201
102 202
当从 STUDENT 表中删除 101 时,上表中的第一个条目将被删除,但 COURSE 表中与 201 对应的记录保持不变。我怎样才能删除该记录?我需要执行删除查询吗?多对多关系不照顾?下面是我的配置:
<set name="course" table="STUDENT_COURSE"
inverse="false" lazy="false" fetch="join" cascade="all" >
<key>
<column name="S_Id" not-null="true" />
</key>
<many-to-many entity-name="COURSE">
<column name="C_Id" not-null="true" />
</many-to-many>
</set>
谢谢!