7

私は Ebean を使用していますが、DDL (データ定義言語) として "on delete cascade" を取得する必要があります - どの注釈がそれを行いますか? 私は試した

@OneToMany(cascade=CascadeType.REMOVE)

しかし、それは「削除制限」を与えます/デフォルトの「削除制限」を変更しませんか?

4

3 に答える 3

1

これを試して

@OneToMany(mappedBy = "parent", cascade = javax.persistence.CascadeType.REMOVE)
@Cascade(org.hibernate.annotations.CascadeType.DELETE_ORPHAN)
于 2013-01-15T09:07:05.303 に答える
0

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;
}
于 2013-01-15T09:13:41.463 に答える