管理一对多之间关系的最佳方法

时间:2014-04-24 12:19:38

标签: database database-design

我有两张桌子Building&房间,每个房间都有一个建筑ID作为FK。但现在我想添加一个序列号,它代表建筑物内房间的顺序。所以我想在Room表中包含序列号,如下所示: -

  • RoomID(PK)
  • ROOM_NAME
  • Room_Type
  • Building_ID(FK到Building表)
  • Sequence_number。

但由于序列号是与建筑物和房间相关的信息。这样就可以将房间序列号存储在房间表内的建筑物内,或者最好在房间和房间之间建立一个关系表。建筑。 此致

1 个答案:

答案 0 :(得分:1)

假设您没有为一些多维酒店连锁工作,一个房间将完全属于一个建筑物,并且从不改变这种关系,房间表内的序列号完全没问题。

当然,如果您正在为一些多维连锁酒店工作,那么假设一个房间属于多个建筑物是完全合理的。在这种情况下,问题变成:所有建筑物中的序列号是否相同?如果是,它仍然应该是Room表的一部分。如果不属于它,则属于Building2Room映射表。