2

外部キーを持つレコードの削除について少し質問があります。問題は、最初は外部キーを使用すると非常に役立つと思っていましたが、それらを使用すると本当に問題が発生することです。例: 2 つのテーブルを作成しました。

Pizza: id, name, price
Order: id_Pizza (Foreign Key), address, telephone, date

クライアントが注文するたびに、注文したピザの ID を持つレコードが作成されます。ピザ マルゲリータ (id=1) の注文が 2000 件あったとします。つまり、id_Pizza = 1 のレコードが 2000 件あるとします。このタイプのピザはもう売りたくないので、メニューからマルゲリータを削除する必要がありますが、できません。テーブルオーダーで外部キーとして使用されるためです。

その問題をどのように管理しますか?

4

1 に答える 1

2

行を削除しないでください。代わりに、列を導入して、。active bit not nullを持つテーブルエントリのみをメニューに表示しますactive=1

くそー、私は今お腹が空いています...

于 2013-01-29T23:08:37.070 に答える