Database 管理一对多关系的最佳方式

Database 管理一对多关系的最佳方式,database,database-design,Database,Database Design,我有两张桌子和一个房间,每个房间都有一个作为FK的buildingID。但是现在我想添加一个序列号,它表示建筑物内房间的顺序。所以我想把序列号放在房间的桌子里,如下所示:- 室友(PK) 房间名称 房间类型 建筑标识(FK到建筑表) 序列号 但是因为序列号是一个与建筑和房间相关的信息。因此,将房间序列号存储在房间表中的建筑物内是正确的,还是最好在房间和建筑物之间有一个关系表。 关于假设您不是为某个跨维度连锁酒店工作,那么一个房间将始终属于同一栋建筑,并且永远不会改变这种关系,房间表中的序列号

我有两张桌子和一个房间,每个房间都有一个作为FK的buildingID。但是现在我想添加一个序列号,它表示建筑物内房间的顺序。所以我想把序列号放在房间的桌子里,如下所示:-

  • 室友(PK)
  • 房间名称
  • 房间类型
  • 建筑标识(FK到建筑表)
  • 序列号
但是因为序列号是一个与建筑和房间相关的信息。因此,将房间序列号存储在房间表中的建筑物内是正确的,还是最好在房间和建筑物之间有一个关系表。
关于

假设您不是为某个跨维度连锁酒店工作,那么一个房间将始终属于同一栋建筑,并且永远不会改变这种关系,房间表中的序列号是完全正确的

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