私は Ebean を使用していますが、DDL (データ定義言語) として "on delete cascade" を取得する必要があります - どの注釈がそれを行いますか? 私は試した
@OneToMany(cascade=CascadeType.REMOVE)
しかし、それは「削除制限」を与えます/デフォルトの「削除制限」を変更しませんか?
私は Ebean を使用していますが、DDL (データ定義言語) として "on delete cascade" を取得する必要があります - どの注釈がそれを行いますか? 私は試した
@OneToMany(cascade=CascadeType.REMOVE)
しかし、それは「削除制限」を与えます/デフォルトの「削除制限」を変更しませんか?
これを試して
@OneToMany(mappedBy = "parent", cascade = javax.persistence.CascadeType.REMOVE)
@Cascade(org.hibernate.annotations.CascadeType.DELETE_ORPHAN)
HibernateがDDLで生成するには、親クラスで@OnDeleteアノテーションを使用する必要があります( @OnDelete(action = OnDeleteAction.CASCADE)
)
例えば:
@Entity
class Parent {
/* id and some attributes */
@OneToMany(mappedBy = "parent", cascade = {CascadeType.REMOVE})
@ForeignKey(name = "FK_CHILD_PARENT")
@OnDelete(action = OnDeleteAction.CASCADE)
List<Child> children;
}
@Entity
class Child {
/* id and some attributes */
Parent parent;
}