我有点停电。
在我的数据库中,我现在看到以下表格:
Courses: ID
Students: ID
CoursesStudents: CourseID, StudentID
现在我将标记与学生和课程联系起来有问题。
商标必须与学年相关联。 E. g。
我想过
StudentsCoursesMarksYear: StudentID, CoursesID, Mark, Year
但我认为这不是对的/最好的......
答案 0 :(得分:0)
你关闭了。但这一年看起来并不充足;你也需要这个学期。
StudentMarks: StudentID, CourseID, Mark, Year, Semester
主键是{StudentID,CourseID,Mark,Year,Semester}。因为它是关键所在,它至少在BCNF中。
在现实世界的学术应用中,您几乎肯定需要其他几个表格。例如,一个可能与提供特定课程的年份和学期有关。 (我的一些课程仅在偶数年份提供。)
答案 1 :(得分:0)
您可以将Year
,Semester
和Mark
添加到CoursesStudents
表,因为如果您添加另一个表,则此表无用