3

この質問は、私が子供と親の間に一方向の関係を持っているという事実に関連してこれに関連しています。@ManyToOne何十万もの子のエントリがあり、親に子との関係を持たせたくありません@OneToMany

最初に子を削除しない限り親を削除できないという事実を除いて、すべて正常に機能します。Postgresがを介して簡単に提供するものを実現しようとしていON DELETE CASCADEます。Postgres9を使用しています。JPA2.0/Hibernate4.1.7も使用しています。

私は現在、Hibernateの自動DDL作成機能を使用しています。これは、物事を頻繁に移動するためです。テーブルに手動で追加したくないのはON DELETE CASCADE、次回ラウンド時に削除されるため、いくつかの変更を行います。

子エンティティON DELETE CASCADEのJPAアノテーションの一部として制約/トリガーを配置する方法はありますか?@ManyToOneこのようにして、データベースは自動的に正しく作成されます。

4

1 に答える 1

4

JPAアノテーションを使用します。しかし、Hibernateにはがあり@org.hibernate.annotations.OnDeleteます。

    @ManyToOne
    @JoinColumn
    @OnDelete( action = OnDeleteAction.CASCADE )
    private Parent parent;

EGは、JPA2.1の一部としてこれに類似したものを追加することを検討しています

于 2012-11-13T19:35:16.693 に答える