# 班级表
cid caption
# 学生表
sid sname gender class_id
# 老师表
tid tname
# 课程表
cid cname teacher_id
# 成绩表
sid student_id course_id number
班级>>>学生 一对多 班级>>>老师 多对多 班级>>>课程 一对多 老师>>>课程 一对一 学生>>>成绩 一对多 班级表 create table class(cid int primary key auto_increment, caption char(10) not null ); 学生表 create table student(sid int primary key auto_increment, sanme char(10) not null, gender enum('male','female','others') default 'male', class_id int , foreign key(class_id) references class(cid) ); 老师表 create table teacher(tid int primary key auto_increment, tname char(10) not null ); 老师班级表 create table teacher_class(id int primary key auto_increment, class_id int, teacher_id int, foreign key(class_id) references class(cid), foreign key(teacher_id) references teacher(tid) ); 课程表 create table course(cid int primary key auto_increment, cname char(16) not null, teacher_id int, foreign key (teacher_id) references teacher(tid) ); 成绩表 create table score(sid int primary key auto_increment, student_id int , course_id int, number int, foreign key(student_id) references student(sid), foreign key(course_id) references course(cid) );