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.7 KiB
5.7 KiB
school_student 表文档
表概述
表名: school_student
功能: 学员信息管理表,用于存储和管理学员的基本信息、学习状态、关联关系等核心数据,是教务系统的核心业务表之一。
字段说明
Field Type Collation Null Key Default Extra Privileges Comment
id int NULL NO PRI NULL auto_increment select,insert,update,references 学员ID
name varchar(255) utf8mb4_0900_ai_ci NO NULL select,insert,update,references 学员姓名
gender tinyint NULL NO NULL select,insert,update,references 性别: 0未知, 1男, 2女
age decimal(4,2) NULL YES NULL select,insert,update,references 年龄,支持小数表示,例如3.11表示3岁11个月
birthday date NULL YES NULL select,insert,update,references 生日
user_id int NULL NO NULL select,insert,update,references 资源ID
campus_id int NULL YES NULL select,insert,update,references 校区ID
class_id int NULL YES NULL select,insert,update,references 班级ID
note text utf8mb4_0900_ai_ci YES NULL select,insert,update,references 备注信息
status tinyint NULL NO NULL select,insert,update,references 学员状态: 0无效, 1有效,2 过期,3 结业
created_at datetime NULL YES CURRENT_TIMESTAMP DEFAULT_GENERATED select,insert,update,references 创建时间
updated_at datetime NULL YES CURRENT_TIMESTAMP DEFAULT_GENERATED on update CURRENT_TIMESTAMP select,insert,update,references 修改时间
deleted_at int NULL NO 0 select,insert,update,references 逻辑删除时间
emergency_contact varchar(255) utf8mb4_0900_ai_ci YES NULL select,insert,update,references 紧急联系人
contact_phone varchar(20) utf8mb4_0900_ai_ci YES NULL select,insert,update,references 联系人电话
member_label varchar(255) utf8mb4_general_ci YES select,insert,update,references 学员标签
consultant_id varchar(255) utf8mb4_0900_ai_ci YES NULL select,insert,update,references 顾问ID
coach_id varchar(255) utf8mb4_0900_ai_ci YES NULL select,insert,update,references 教练ID
trial_class_count int NULL YES 0 select,insert,update,references 体验课次数|默认0
headimg varchar(1000) utf8mb4_general_ci NO select,insert,update,references 会员头像
first_come timestamp NULL YES NULL select,insert,update,references 一访时间
second_come timestamp NULL YES NULL select,insert,update,references 二访时间
created_person_id int NULL YES NULL select,insert,update,references 首次创建人 id
功能用途
主要功能
- 学员基础信息管理: 存储学员姓名、性别、年龄、生日等基本信息
- 学员状态管理: 跟踪学员的学习状态(有效、无效、过期、结业)
- 关联关系管理: 关联校区、班级、顾问、教练等相关信息
- 联系信息管理: 存储紧急联系人、联系电话等重要联系方式
- 学习跟踪: 记录体验课次数、访问时间等学习轨迹
- 个性化标签: 支持学员标签分类和个性化管理
- 数据完整性: 提供软删除和创建人追踪机制
业务场景
- 学员入学注册和信息录入
- 学员学习状态跟踪和管理
- 班级学员分配和调整
- 顾问和教练的学员分配
- 学员联系信息维护
- 体验课程安排和统计
- 学员标签分类和精准营销
- 学员学习轨迹分析
关联关系
直接关联表
- school_campus: 通过campus_id字段关联学员所属校区
- school_class: 通过class_id字段关联学员所在班级
- school_sys_user: 通过consultant_id、coach_id关联顾问和教练
- school_sys_user: 通过created_person_id关联创建人
- school_user: 通过user_id字段关联用户资源信息
间接关联表
- school_course: 通过班级间接关联课程信息
- school_schedule: 通过班级间接关联课程安排
- school_attendance: 通过学员ID关联考勤记录
- school_fee: 通过学员ID关联费用记录
- school_exam: 通过学员ID关联考试记录
- school_homework: 通过学员ID关联作业记录
关联说明
id字段作为主键,在多个业务表中作为student_id外键引用campus_id关联校区,实现多校区学员管理class_id关联班级,支持学员班级调整consultant_id和coach_id关联员工,实现责任制管理user_id关联用户资源,支持学员登录和在线学习- 学员状态影响相关业务功能的可用性
索引建议
- 主键索引:id(自动创建)
- 普通索引:campus_id(按校区查询学员)
- 普通索引:class_id(按班级查询学员)
- 普通索引:status(按状态查询活跃学员)
- 普通索引:deleted_at(软删除查询)
- 复合索引:campus_id + status(查询校区活跃学员)
- 复合索引:class_id + status(查询班级活跃学员)
- 普通索引:consultant_id(按顾问查询学员)
- 普通索引:coach_id(按教练查询学员)
- 普通索引:created_at(按创建时间排序)
注意事项
- 年龄字段: age使用decimal类型支持精确到月的年龄表示
- 软删除: 使用deleted_at字段实现软删除,保护历史数据
- 状态管理: status字段需要与业务流程保持一致,状态变更需要记录日志
- 外键约束: campus_id、class_id等外键需要保证数据完整性
- 联系信息: 紧急联系人和电话是重要安全信息,需要格式验证
- 头像存储: headimg字段存储图片路径,需要配合文件服务
- 访问时间: first_come和second_come用于跟踪学员访问轨迹
- 体验课统计: trial_class_count需要与实际课程记录保持同步
- 数据隐私: 学员个人信息需要符合数据保护法规
- 批量操作: 大批量学员数据操作需要考虑性能影响