我需要创建2个表名单和记录,每个名册都有很多记录。 名册以课程为基础,每个班级每天最多1个名单。 一条记录可以有很多学生。
我想知道这种主 - 细节关系设计是否有效? 我的朋友建议一切都可以在记录表中完成,因为我们希望在特定日期显示班级中所有学生的名单。因此,在主 - 细节方法中,它需要在 2个表上进行查询才能完成任务,相反,如果只有一个记录表,则只需 1个查询。登记/> 请指教。
答案 0 :(得分:0)
如果您需要跟踪主键值之上的ROSTER
属性,则数据库规范化规则要求您拆分ROSTER
表。当然,你总是可以选择反规范化,但这个决定必须睁大眼睛。
如果不除了密钥之外还有ROSTER
的列,那么您的朋友是对的。否则你应该提醒你的朋友,因为某些可以完成,并不意味着应该完成。