CREATE TABLE students (
student_id SERIAL PRIMARY KEY,
student_name VARCHAR(100) NOT NULL,
gender CHAR(1) NOT NULL,
birth_date DATE NOT NULL,
class_id INT,
create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
modify_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);
COMMENT ON TABLE students IS '存储学生的基本信息';
COMMENT ON COLUMN students.student_id IS '学生的唯一标识,自增主键';
COMMENT ON COLUMN students.student_name IS '学生的姓名';
COMMENT ON COLUMN students.gender IS '学生的性别,M 表示男性,F 表示女性';
COMMENT ON COLUMN students.birth_date IS '学生的出生日期';
COMMENT ON COLUMN students.class_id IS '学生所在班级的标识,关联 classes 表的 class_id';
COMMENT ON COLUMN students.create_time IS '记录创建的时间';
COMMENT ON COLUMN students.modify_time IS '记录修改的时间';
-- 创建班级表
CREATE TABLE classes (
class_id SERIAL PRIMARY KEY,
class_name VARCHAR(100) NOT NULL,
teacher_id INT,
create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
modify_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);
COMMENT ON TABLE classes IS '存储班级的相关信息';
COMMENT ON COLUMN classes.class_id IS '班级的唯一标识,自增主键';
COMMENT ON COLUMN classes.class_name IS '班级的名称';
COMMENT ON COLUMN classes.teacher_id IS '班级的授课教师标识,关联 teachers 表的 teacher_id';
COMMENT ON COLUMN classes.create_time IS '记录创建的时间';
COMMENT ON COLUMN classes.modify_time IS '记录修改的时间';
-- 创建教师表
CREATE TABLE teachers (
teacher_id SERIAL PRIMARY KEY,
teacher_name VARCHAR(100) NOT NULL,
subject VARCHAR(50) NOT NULL,
create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
modify_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);
COMMENT ON TABLE teachers IS '存储教师的基本信息';
COMMENT ON COLUMN teachers.teacher_id IS '教师的唯一标识,自增主键';
COMMENT ON COLUMN teachers.teacher_name IS '教师的姓名';
COMMENT ON COLUMN teachers.subject IS '教师所教授的学科';
COMMENT ON COLUMN teachers.create_time IS '记录创建的时间';
COMMENT ON COLUMN teachers.modify_time IS '记录修改的时间';
-- 创建课程表
CREATE TABLE courses (
course_id SERIAL PRIMARY KEY,
course_name VARCHAR(100) NOT NULL,
teacher_id INT,
create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
modify_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);
COMMENT ON TABLE courses IS '存储课程的相关信息';
COMMENT ON COLUMN courses.course_id IS '课程的唯一标识,自增主键';
COMMENT ON COLUMN courses.course_name IS '课程的名称';
COMMENT ON COLUMN courses.teacher_id IS '教授该课程的教师标识,关联 teachers 表的 teacher_id';
COMMENT ON COLUMN courses.create_time IS '记录创建的时间';
COMMENT ON COLUMN courses.modify_time IS '记录修改的时间';
-- 创建成绩表
CREATE TABLE scores (
score_id SERIAL PRIMARY KEY,
student_id INT NOT NULL,
course_id INT NOT NULL,
score NUMERIC(5, 2) NOT NULL,
create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
modify_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);
COMMENT ON TABLE scores IS '存储学生的课程成绩信息';
COMMENT ON COLUMN scores.score_id IS '成绩记录的唯一标识,自增主键';
COMMENT ON COLUMN scores.student_id IS '学生的标识,关联 students 表的 student_id';
COMMENT ON COLUMN scores.course_id IS '课程的标识,关联 courses 表的 course_id';
COMMENT ON COLUMN scores.score IS '学生该课程的成绩';
COMMENT ON COLUMN scores.create_time IS '记录创建的时间';
COMMENT ON COLUMN scores.modify_time IS '记录修改的时间';