2013-01-09 101 views
1

是否可以将2个不同表中的2个主键合并到另一个表中的1个外键中?我有一个名为product_food的表,其中food_id为主键,product_drinks的drink_id为主键,然后我想将food_id和drink_id作为外键合并到我的订单表中作为product_ID?那可能吗?2不同表中的主键作为另一个表中的一个外键

回答

1

有你可以解决它的方法很多,从我的头顶:

  1. 你得到食物和饮料在同一个表,使用相同的ID,他们可能会使用不同的领域。
  2. 你制作一个独特的ID产品表,并使食品和饮料有一个产品ID。
  3. 在订单表上设置可为空的外键food_id,drink_id,并可能添加另一个字段,指示要使用哪一个。
1

你不应该使用它作为主键;定义一个不同的Product_Id主键。

如果您需要食品饮料产品的独特性,只需将两列Food_Id和Drink_id添加到产品表中,将它们设置为外键,并在它们两个上添加唯一索引,以便新产品不能补充,由相同的食物饮料元组制成。

那会满足您最初的需求吗?

相关问题