我正在建立一个管理学生上课的系统。我创建了两个表:学生(student_id,姓名,邮件......)和课程(course_id,姓名,讲师......)。现在我的问题是我应该如何记录哪些学生参加哪些课程?
我应该为这个结构的每个课程创建另一个表: COURSE_ID,讲师,student_1,students_2,student_3 ...
或者可能有更好的解决方案来创建这种关系? TX
更新:我应该提到学生可以参加几门课程
答案 0 :(得分:3)
由于您的表之间存在多对多关系(每个学生可以参加多个课程,每个课程可以由多个学生参加),您需要一个中间表,其中包含两个表的主键。
coursestudent(course_id,student_id)
使用相应表格的FOREIGN KEY。
答案 1 :(得分:2)
取决于,如果学生可以有多个课程,并且课程属于多个学生,您想要制作一个包含id,course_id(FOREIGN KEY)和student_id(FOREIGN KEY)的表。
如果学生只能开设一门课程,但是多个学生可以选择一门课程,那么您可能希望将course_id作为外键添加到学生中。
答案 2 :(得分:1)
你需要两张桌子,
students (student_id, studentName, student.....)
courses (course_id, student_id, courseName, course....)
此处,学生与student_id
课程以及course_id
表格中的courses
相关。
编辑:
course_id student_id courseName
c12 s34 DB
c12 s35 DB
c43 s86 OS
c65 s45 PHP
c57 s86 OS
... ... ...
... ... ...
... ... ...