Database 具有公共关联表的数据库中的一对多关系
想象一下,我有一个桌上电影院。它有电影的名字、导演等。它可以在任何时间开始和结束,这段时间是在另一个表中动态创建的:Schedule。 因此,电影时间表之间存在一对多关系。所以,这可以通过在调度中添加外键来解决。像这样的事情: 电影 身份证名称 1…矩阵 日程 青鱼。从……到。。。。。。周工作日 1。。。。。。。。17.00. 19.00..... 星期三 1……….20.00。星期四22:00 现在假设另一个表也希望使用这个调度,它在概念上与Cine完全分离,比如CarRevision 在这种情况下,如何更好的设计数据库 是否将另一个外国ID添加到计划? 日程 青鱼。修订日期:从……至。。。。。。周工作日 1。。。。。。。。。空…………17.00。19.00..... 星期三 1…………空…………20.00。22.00..... 星期四 空…………325…………14.13。14.34..... 星期一 创建另一个表,如RevisionSchedule,与Schedule相同,但在逻辑上具有不同的外部ID? 其他解决方案?如果我们有许多概念上不同的表想要使用Schedule呢?Database 具有公共关联表的数据库中的一对多关系,database,database-design,relational-database,one-to-many,Database,Database Design,Relational Database,One To Many,想象一下,我有一个桌上电影院。它有电影的名字、导演等。它可以在任何时间开始和结束,这段时间是在另一个表中动态创建的:Schedule。 因此,电影时间表之间存在一对多关系。所以,这可以通过在调度中添加外键来解决。像这样的事情: 电影 身份证名称 1…矩阵 日程 青鱼。从……到。。。。。。周工作日 1。。。。。。。。17.00. 19.00..... 星期三 1……….20.00。星期四22:00 现在假设另一个表也希望使用这个调度,它在概念上与Cine完全分离,比如CarRevision 在这种
为了进行适当的规范化,您应该从计划中删除cine_id,因为它不是计划定义的直接部分 你会做一张新桌子
cine_schedule
--------------
cine_id
schedule_id
start_date
end_date
您还可以根据需要建立其他关系
car_schedule
--------------
car_id
schedule_id
等等。所以,您的设计是为每个一对多关系创建不同的表。