OneToMany双方向の関係エンティティ クラス (WorkOrderおよび)がありTaskます。WorkOrderを 1 つ以上持っていますTask。クエリWorkOrderでエンティティを削除すると、外部キー制約例外が発生します。関連を自動的に削除することはできません。EntityManagerTask
私の質問: Is CascadeType.REMOVEused by em.removed(..)method? query?(削除クエリ)で使用されていませんか?
WorkOrder.java
.....
public class WorkOrder {
....
@Temporal(TemporalType.TIMESTAMP)
private Date expiryDate;
@OneToMany(cascade=CascadeType.ALL, mappedBy="workOrder", orphanRemoval=true)
private List<Task> taskList;
......
}
タスク.java
......
public class Task {
.....
@ManyToOne
@JoinColumn(name = "WORK_ORDER_ID", referencedColumnName = "ID")
private WorkOrder workOrder;
.....
}
WorkOrder有効期限に基づいて削除する必要があります。まず関連を削除する必要がありTask、その後で削除する必要がありWorkOrderます。それが正しいか?CascadeTypeで使えたらもっといいと思いますQuery。