智慧教务系统
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

5.1 KiB

school_exam_records 表文档

表概述

表名: school_exam_records
功能: 考试记录管理表,负责管理教务系统中的考试实例记录,跟踪考试过程、记录考试成绩和管理考试状态

字段说明

Field	Type	Collation	Null	Key	Default	Extra	Privileges	Comment
id	int	NULL	NO	PRI	NULL	auto_increment	select,insert,update,references	记录编号
campus_id	int	NULL	NO		NULL		select,insert,update,references	校区ID
user_id	int	NULL	NO		NULL		select,insert,update,references	人员ID
paper_id	int	NULL	NO		NULL		select,insert,update,references	试卷ID
score	decimal(5,2)	NULL	YES		NULL		select,insert,update,references	得分
status	enum('in_progress','completed')	utf8mb4_general_ci	YES		in_progress		select,insert,update,references	考试状态: in_progress-进行中, completed-已完成
start_time	datetime	NULL	YES		NULL		select,insert,update,references	考试开始时间
end_time	datetime	NULL	YES		NULL		select,insert,update,references	考试结束时间
created_at	timestamp	NULL	YES		CURRENT_TIMESTAMP	DEFAULT_GENERATED	select,insert,update,references	创建时间
updated_at	timestamp	NULL	YES		CURRENT_TIMESTAMP	DEFAULT_GENERATED on update CURRENT_TIMESTAMP	select,insert,update,references	修改时间

功能用途

主要功能

  1. 考试实例管理: 创建和管理具体的考试实例记录
  2. 考试状态跟踪: 跟踪考试的进行状态(进行中/已完成)
  3. 成绩记录管理: 记录和管理考试的最终得分
  4. 时间管理: 记录考试的开始时间和结束时间
  5. 人员关联管理: 关联考试人员和试卷信息
  6. 校区管理: 按校区管理考试记录
  7. 考试过程控制: 控制考试的开始、进行和结束流程
  8. 数据统计支持: 为考试数据分析提供基础数据
  9. 时间追踪: 记录考试记录的创建和修改时间

业务场景

  1. 员工考试: 记录员工技能测试、入职考试、培训考试过程
  2. 学员测评: 记录学员课程测试、阶段考试、毕业考试过程
  3. 考试监控: 实时监控考试进行状态和完成情况
  4. 成绩管理: 统计和管理考试成绩,生成成绩报告
  5. 考试分析: 分析考试时长、通过率等数据
  6. 补考管理: 管理需要补考的人员和考试安排
  7. 考试审计: 提供考试过程的审计追踪
  8. 数据导出: 导出考试记录用于外部分析
  9. 考试统计: 按时间、人员、试卷等维度统计考试情况

关联关系

主要关联表

  1. school_exam_papers: 试卷表(paper_id外键关联)
  2. school_personnel: 人员表(user_id关联员工)
  3. school_student: 学员表(user_id关联学员)
  4. school_campus: 校区表(campus_id外键关联)
  5. school_exam_answers: 考试答案表(考试答题记录关联)
  6. school_course: 课程表(课程考试关联)
  7. school_class: 班级表(班级考试关联)
  8. school_exam_questions: 考试题目表(间接关联)

关联说明

  1. 试卷关联: paper_id字段关联到具体的试卷配置
  2. 人员关联: user_id字段关联到考试人员(员工或学员)
  3. 校区关联: campus_id字段关联到具体校区
  4. 答题关联: 考试答案表记录此次考试的具体答题情况
  5. 课程关联: 考试可以关联到具体的课程或班级
  6. 题目关联: 通过试卷间接关联到考试题目
  7. 状态关联: 考试状态决定是否可以查看成绩
  8. 时间关联: 开始和结束时间用于计算考试时长

索引建议

  1. 主键索引: id(已存在)
  2. 外键索引:
    • campus_id(校区查询)
    • user_id(人员查询)
    • paper_id(试卷查询)
  3. 普通索引:
    • status(状态查询)
    • score(成绩查询)
  4. 复合索引:
    • (campus_id, user_id)(校区+人员查询)
    • (paper_id, status)(试卷+状态查询)
    • (user_id, status)(人员+状态查询)
    • (start_time, end_time)(时间范围查询)
  5. 时间索引:
    • start_time(开始时间查询)
    • end_time(结束时间查询)
    • created_at(创建时间查询)
    • updated_at(更新时间查询)

注意事项

  1. 状态一致性: status必须为枚举值中的一种
  2. 时间逻辑: end_time必须大于start_time
  3. 成绩范围: score应在试卷设定的分数范围内
  4. 外键完整性: campus_id、user_id、paper_id必须存在
  5. 状态流转: 只能从in_progress转换为completed
  6. 并发控制: 同一人员同一试卷同时只能有一个进行中的考试
  7. 时间控制: 考试时间不能超过试卷设定的时间限制
  8. 成绩计算: 成绩应基于答题情况自动计算
  9. 数据完整性: 删除考试记录需要同时删除相关答题记录
  10. 权限验证: 只有考试人员本人和管理员可以查看考试记录
  11. 审计要求: 考试过程需要记录详细的操作日志
  12. 备份策略: 重要考试数据需要定期备份
  13. 性能优化: 大量考试记录查询需要考虑性能
  14. 数据归档: 历史考试记录需要定期归档处理