Object1とjunctionテーブルとObject2があります。Object2は、多くのジャンクションテーブルを持つテーブルですが、それを参照するジャンクションテーブルは1つだけです。テーブルObject1を削除する場合は、ジャンクションテーブルとObject2を削除する必要があります。この状況で外部キーを作成するにはどうすればよいですか?ただし、Object2を削除する場合は、Object1ではなく、ジャンクションテーブルのみを削除する必要があります。SQLServer2008を使用しています。
2 に答える
1
私は提案します:
表1の行を削除する場合は、ジャンクションテーブル(JT)と表2の行を削除する必要があります。回答:ON DELETE CASCADEをonに設定して、表1を参照するJTでFKを設定します。ON DELETE CASCADEがonに設定されているJTを参照して、表2のFKを設定します。
表2の行を削除する場合は、JTの行を削除する必要があります。回答:このためのトリガーを設定する必要があるかもしれません。
于 2010-10-06T06:56:37.370 に答える
1
あなたは出来る
- テーブルからの外部キーにCASCADINGDELETESを適用します。
junction
Object2
- にトリガーを追加し、削除を確認して、テーブル
Object1
内の対応するレコードを削除します。junction
Object2
于 2010-10-06T06:57:04.623 に答える