答案 0 :(得分:3)
都不是。如果两个学生住在宿舍,拥有(分享)相同的电话号码(宿舍电话),或者是居住在家里的兄弟姐妹怎么办?电话号码表应为phonenumber
,和 studentId
作为复合主键的复合键。这反映了所谓的多对多或关联关系,它们不能轻易用XML表示。
以下架构假设每个学生都可以确定"类型"电话他/她使用那条线。如果手机的类型仅由手机确定,那么您将为没有studentId
的电话号码和电话类型添加另一个单独的表格,并使关联表格中的phoneNumber
字段成为外来的密钥(FK)到新的电话表
答案 1 :(得分:0)
我选择设计1,但需要修改。但是,电话号码表将使用学生ID作为主键。这样你可以让不止一个学生使用同一部手机,这对我来说是一个完全正常的场景。
答案 2 :(得分:0)
我不会通过将电话号码标准化为某些可能无限的列表来反驳这一点。
您真正需要多少/哪种类型的电话号码?例如,你需要传真号码吗? 也许你需要一个学期时间和一个非学期时间数字吗?
您似乎更有可能需要一个主要号码和备用号码,而这些号码可以存储在学生表本身中。