数据库设计

数据库设计

  • 以下所有表默认自带一个自增 id
  • 以下所有表默认自带 created_atupdated_at 两个字段
  • 为了方便查询,以下所有下划线命名法在实际设计中可能全部转为驼峰命名法

用户信息

manager

字段 类型 描述 约束
name varchar 姓名 not null
card_id varchar 校园卡号 not null
authorizerId int 授权人 id 外键,引用自 manager 表的 id 属性
privilege tinyint 0 为超级管理员,1为普通管理员,其余待定 not null

student

字段 类型 描述 约束
card_id varchar 校园卡号
stu_id varchar 学号 primary key
name varchar 姓名 not null
college varchar 学院

teacher

字段 类型 描述 约束
name varchar 讲师名称 not null
college varchar 所属单位 not null
intro text 老师简介
phone varchar 手机号码
office varchar 办公地址
email varchar 邮箱
image_url varchar 导师照片 url
teach_form varchar 授课形式

teach_topic

字段 类型 描述 约束
teacher_id int 讲师 id 外键,引用自 teacher 表的 id 属性
topic varchar 授课专题 not null

课程信息

course

字段 类型 描述 约束
course_name varchar 课程名称 not null
teacher_id int 讲师 id 外键,引用自 teacher 表的 id 属性
start_time datetime 上课开始时间 not null
end_time datetime 上课结束时间 not null
course_id varchar 课程编号 primary key
location varchar 上课地址 not null

course_student

字段 类型 描述 约束
course_id varchar 课程编号 外键,引用自 course 表的 course_id 属性
stu_id varchar 学生学号 外键,引用自 student 表的 stu_id 属性

评价模板

comment_template

字段 类型 描述 约束
template_name varchar 模板名称 not null

template_question

字段 类型 描述 约束
template_id int 模板 id 外键,引用自 comment_template 表的 id 属性
question text 问题 not null
_type tinyint 问题类型,0为打分题,1为问答题,其余待定 not null

评价信息

course_comment

字段 类型 描述 约束
course_id varchar 课程编号 外键,引用自 course 表的 course_id 属性
template_id int 模板 id 外键,引用自 comment_template 表的 id 属性

comment

字段 类型 描述 约束
course_id varchar 课程编号 外键,引用自 course 表的 course_id 属性
stu_id varchar 学生学号 外键,引用自 student 表的 stu_id 属性
star tinyint 1为精选评论

comment_result

字段 类型 描述 约束
comment_id int 评价 id 外键,引用自 comment 表的 id 属性
question_id int 问题 id 外键,引用自 template_question 表的 id 属性
result text 问题结果,根据问题类型来决定存储值类型 not null