2つのクラス間に多対多の関係を定義しました。 イベントと個人(別のデータベーステーブルperson_eventで定義されています)。 ここで、人物を削除したいとします。そのため、関連するすべての関連付けもperson_eventテーブルから削除する必要があります。言い換えれば、私はカスケード を削除したいです。多対多カスケード削除
のシナリオを考えてみましょう:
- "イベント" テーブルには、ID = 1で識別される3つのイベント、2、3
- が含まれている "人" の表は、ID = 4で識別される二人が含まれています
- 5. 1-4、2-4のような関連付けを含む「person_event」テーブル、今3-5
は、その後だけでなく それをしない、私はHibernate.delete()を使用して、イベント1を削除すると仮定しますイベント1を削除し、と関連person_event1-4だけでなく、 人4!
問題はperson4が別のテーブルによって参照されており、外部制約例外をスローします... イベントと関連person_eventだけを削除するようにNHibernateを構成する方法は?
"nhibernate"タグを "hibernate"に変更することをお勧めします。これはNHibernate固有の機能に関連するものではないようです。 –
または "hibernate"と "nhibernate"の両方のタグを使用してください。 – yfeldblum
あなたは問題を解決しましたか?はいの場合はどうですか? –