1

2 つの異なるテーブルの 2 つの主キーを別のテーブルの 1 つの外部キーに結合することは可能ですか? 主キーとして food_id を持つ product_food という名前のテーブルと、主キーとして drink_id を持つ product_drinks という名前のテーブルがあり、次に、food_id と drink_id を私の注文テーブルの外部キーとして product_ID として組み合わせたいですか? それは可能ですか?

4

2 に答える 2

1

これを主キーとして使用しないでください。別の Product_Id 主キーを定義します。

飲食品の一意性が必要な場合は、Food_Id と Drink_id の 2 つの列を products テーブルに追加し、それらを外部キーとして設定し、両方に一意のインデックスを追加して、新しい製品を追加できないようにします。同じ食べ物と飲み物のタプル。

それはあなたの最初の必要性で十分でしょうか?

于 2013-01-09T10:17:40.030 に答える
1

私の頭の上から、あなたがそれを解決できる多くの方法があります:

  1. 同じ ID を使用して、同じテーブルで食べ物と飲み物を取得します。それらは異なるフィールドを使用する場合があります。
  2. 一意の ID を持つテーブル製品を作成し、食品や飲み物に製品 ID を持たせます。
  3. orders テーブルで null 許容の外部キー f​​ood_id、drink_id を作成し、使用するフィールドを示す別のフィールドを追加する可能性があります。
于 2013-01-09T10:19:01.157 に答える