如果是外键,您是否需要添加另一个实体的属性?

问题描述:

我正在为虚拟动物园制作ER模型。我有一个名为“Tickets”的实体,它有一个ID_key和一个属性“Type_of_ticket”。我制作了另一个名为“价格”的实体,其中包含门票类型和价格,并与门票相关。我是否必须将“Type_of_ticket”属性添加到Price实体?或者是“价格”属性本身就足够了?如果是外键,您是否需要添加另一个实体的属性?

如果您的“价格”实体仅包含价格本身,最好将价格作为属性添加到门票实体,而不是有两个单独的实体。最后,“门票”实体将具有属性:Id_Key,字符串“Type_of_ticket”和小数点(12,2)“Price”。

+0

谢谢你的建议。在Price实体中,我实际上也有另一个属性Age_limit。那么是否有必要将Type_of_ticket属性添加到Price实体? 事后看来,最好将Price实体重命名为Ticket_Information。 – Robbebeest

+0

如果是这样的话,我相信你有两个选择: 1.合并一个表中的所有属性,就像我之前建议的那样。 但是,如果要保留两个实体以便稍后扩展它,则必须在“Price”实体中包含Ticket_ID_key作为外键。 请记住,将主键作为外键是一种好习惯。 然后,您可以通过基于Ticket_ID_key连接两个表来获取其他属性 – noelceta