当对订单(父级)执行删除时,休眠尝试级联删除子级。它不是首先删除子项,而是尝试使外键无效,然后删除父项,然后删除子项。
有没有办法更改我的配置以允许先删除子项,然后删除父项?绕过取消外键的步骤?
表格和相关列
命令
id - PK,整数,不为空
订单结果
id - PK,int,非空 order_id - FK,int,非空
实体规范
命令
@OneToMany(cascade = CascadeType.ALL, orphanRemoval = true)
@JoinColumn(name = "CLOrderID")
public List<OrderResult> getOrderResults() {
return orderResults;
}
订单结果
@ManyToOne
@JoinColumn(name = "CLOrderID", nullable = false)
public Order getOrder() {
return order;
}