为学生分配多个科目

时间:2018-10-24 04:56:31

标签: mysql phpmyadmin

在为学生分配多个科目时遇到问题。以10级标准学习的学生可以与其他必修科目一起学习生物学或计算机。现在,我想以一种方式将两个表“学生”和“受试者”联系起来:如果学生学习生物学或计算机,则所有科目的列表都将与其包含生物学或计算机的ID相关联。下表是: 学生桌:

CREATE TABLE `students` (
  `student_id` int(50) NOT NULL,
  `student_name` varchar(100) NOT NULL,
  `father_name` varchar(100) NOT NULL,
  `class` varchar(10) NOT NULL,
  `subject_group` varchar(25) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;

主题表:

CREATE TABLE `subjects` (
  `subject_id` int(10) NOT NULL,
  `student_id` int(50) NOT NULL,
  `subject_name` varchar(25) NOT NULL
  ) ENGINE=InnoDB DEFAULT CHARSET=latin1;

1 个答案:

答案 0 :(得分:0)

您需要另一个表格:

CREATE TABLE `Student_Subject` (
`id`
`subject_id` ,
`student_id` 
) ENGINE=InnoDB DEFAULT CHARSET=latin1;

subject_id和student_id将是外键。该表的ID将是主键。这样,您可以建立一对多关系。