我正在尝试通过其中一个外键级联删除连接表中的行,并且它有另一个与之相关的表,我也想删除与此 ID 关联的所有行。所以它看起来像下面的图表。当我将 Session.delete(reqCandObject) 与 hibernate 一起使用时,它可以正常工作并通过从 Candidate_jobReq 表中删除 One 条目以及相关注释来级联。但是,我想删除所有具有特定候选 ID 的 Candidate_jobReq 条目(并删除评论)我尝试了下面的函数,但与好的 hibernate.delete(object) 函数不同,这个函数遇到了外键约束错误. 如何在让休眠级联删除的同时删除这些行?
public void deleteWhere(String selectionCase){
Session hibernateSession = this.getSession();
try {
hibernateSession.beginTransaction();
Query q = hibernateSession.createQuery("delete "+ type.getSimpleName() +" where " + selectionCase);
q.executeUpdate();
hibernateSession.getTransaction().commit();
} finally {
hibernateSession.close();
}
}