数据库设计:哪种关系(一对多或多对多)最适合这种情况?

时间:2017-03-24 18:06:02

标签: mysql many-to-many relational-database one-to-many

让我简化这个问题。 让我们说我们有学生和科目。 每个学生可以选择任何4个科目。

A型设计:

学生表

id  Students_name
1   John
2   Jack
3   Jill
4   Nancy

主题表

id  Subjects    Students_id
1   Language      1
2   Maths        1
3   Science       1
4   History       1
5   Computer        2
6   Language      2
7   Maths        2
8   Science       2
9   History       3
10  Computer        3
11  Maths        3
12  Science       3

B类设计

与A类相同的学生表

主题表

id  Subjects    
1   Language      
2   Maths       
3   Science       
4   History       
5   Computer  

此处添加了另一个联结表,如下所示

students_subjects_mapping table

id  Subjects_id Students_id
1   1             1
2   2             1
3   3             1
4   4             1
5   5             2
6   2             2
7   3             2
8   4             2

那么哪种类型更适合这种情况?

0 个答案:

没有答案