创建如下表:
1.教师表 teacher
字段名 | 数据类型 | 长度(字节数) | 是否可null | 默认值 | 主、外键 | 其他约束 | 备注信息 |
NO | CHAR | 4 | 主键 | 教师号 | |||
NAME | VARCHAR | 10 | 否 | 教师姓名 | |||
PROF | VARCHAR | 20 | 否 | assistant | 职称 | ||
SAL | INT | 2 | 否 | 工资 | |||
COMM | SMALLINT | 2 | 岗位津贴 |
create table teacher(
no char(4) comment "教师号" primary key,
name varchar(10) not null comment"教师姓名",
prof varchar(20) not null default "助教" comment "职称",
sal int(2) not null comment "工资",
comm smallint(2) comment "岗位津贴"
);
2.学生表 student
字段名 | 数据类型 | 长度(字节数) | 是否可null | 默认值 | 主、外键 | 其他约束 | 备注信息 |
NO | CHAR | 4 | 主键 | 学生号 | |||
NAME | VARCHAR | 10 | 否 | 学生姓名 | |||
AGE | TINYINT | 1 | 否 | 年龄 | |||
DEPT | VARCHAR | 20 | 否 | computer | 系名 |
create table shengdian_student(
no char(4) comment "学生号" primary key,
name varchar(10) comment"学生姓名" not null,
age tinyint(1) comment "年龄" not null,
dept varchar(20) comment "系名" not null default "计算机系"
);
3.课程表 course
字段名 | 数据类型 | 长度(字节数) | 是否可null | 默认值 | 主、外键 | 其他约束 | 备注信息 |
NO | CHAR | 4 | 主键 | 课程号 | |||
NAME | VARCHAR | 20 | 否 | 唯一 | 课程名 | ||
CLASS_HOURS | INT | 2 | 45 | 课时数 |
create table shengdian_course(
no char(4) comment "课程号" primary key,
name varchar(20) comment "课程名" not null unique,
class_hours int(2) comment "课时数" default "45"
);
4.授课表 school_teaching
字段名 | 数据类型 | 长度(字节数) | 是否可null | 默认值 | 主、外键 | 其他约束 | 备注信息 |
ID | INT | 4 | 主键 | 自动增加 | 序号 | ||
COURSE_NO | CHAR | 4 | 否 | 外键course(no) | 课程号 | ||
TEACHER_NO | CHAR | 4 | 否 | 外键teacher(no) | 教师号 | ||
WEEK | INT | 2 | 15 | 周数 | |||
CLASS_NUM | VARCHAR | 10 | 否 | 教室号 |
create table shengdian_school_teaching(
id int(4) primary key auto_increment comment "序号",
course_no char(4) not null comment "课程号",
teacher_no char(4) not null comment "教师号",
week int(2) default "15" comment "周数",
class_num varchar(10) not null comment "教室号 ",
constraint fk_course_no foreign key (course_no) references shengdian_course(no),
constraint fk_teacher_no foreign key (teacher_no) references teacher(no)
);
5.成绩表 grade
字段名 | 数据类型 | 长度(字节数) | 是否可null | 默认值 | 主、外键 | 其他约束 | 备注信息 |
STUDENT_NO | CHAR | 4 | 否 | 主键 | 学生号 | ||
COURSE_NO | CHAR | 4 | 否 | 主键 | 课程号 | ||
SCORE | FLOAT | 否 | 60 | 成绩 |
create table shengdian_grade(
student_no char(4) comment "学生号",
course_no char(4) comment "课程号",
score float comment "成绩" not null default "60",
primary key(student_no,course_no)
);