提交
This commit is contained in:
1 parent
48f15745be
commit
e421030ada
72 files changed
+17064
-35
No files matched your search
@@ -0,0 +1,95 @@
|
||||
-- 学生操行分历史数据迁移 - 临时表创建脚本
|
||||
-- 执行时间:2025-01-XX
|
||||
-- 执行人:系统管理员
|
||||
|
||||
-- ===========================================
|
||||
-- 临时表1:存储Excel原始数据
|
||||
-- ===========================================
|
||||
DROP TABLE IF EXISTS temp_conduct_score_import;
|
||||
CREATE TABLE temp_conduct_score_import (
|
||||
id BIGINT AUTO_INCREMENT PRIMARY KEY COMMENT '主键ID',
|
||||
student_no VARCHAR(50) NOT NULL COMMENT '学号',
|
||||
student_name VARCHAR(100) COMMENT '姓名',
|
||||
gender VARCHAR(10) COMMENT '性别',
|
||||
ethnicity VARCHAR(50) COMMENT '民族',
|
||||
academic_year_str VARCHAR(20) NOT NULL COMMENT '原始学年(2015-2016)',
|
||||
semester_str VARCHAR(20) NOT NULL COMMENT '原始学期(第一学期/第二学期)',
|
||||
monthly_scores TEXT NOT NULL COMMENT '平时分数(一月:90,九月:85...)',
|
||||
final_score DECIMAL(5,2) COMMENT '最终分',
|
||||
grade_level VARCHAR(20) COMMENT '等级',
|
||||
department VARCHAR(100) COMMENT '院系',
|
||||
major VARCHAR(100) COMMENT '专业',
|
||||
class_name VARCHAR(100) COMMENT '班级',
|
||||
grade VARCHAR(20) COMMENT '年级',
|
||||
import_status VARCHAR(20) DEFAULT 'pending' COMMENT '导入状态(pending/processing/parsed/error)',
|
||||
error_msg TEXT COMMENT '错误信息',
|
||||
create_time DATETIME DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
||||
update_time DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
|
||||
|
||||
INDEX idx_student_no (student_no),
|
||||
INDEX idx_import_status (import_status),
|
||||
INDEX idx_create_time (create_time)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='学生操行分Excel数据临时表';
|
||||
|
||||
-- ===========================================
|
||||
-- 临时表2:解析后的月度分数中间表
|
||||
-- ===========================================
|
||||
DROP TABLE IF EXISTS temp_conduct_score_parsed;
|
||||
CREATE TABLE temp_conduct_score_parsed (
|
||||
id BIGINT AUTO_INCREMENT PRIMARY KEY COMMENT '主键ID',
|
||||
temp_id BIGINT NOT NULL COMMENT '关联临时表ID',
|
||||
|
||||
-- Excel原始字段(用于追溯)
|
||||
student_no VARCHAR(50) NOT NULL COMMENT '学号',
|
||||
academic_year_str VARCHAR(20) NOT NULL COMMENT '原始学年',
|
||||
semester_str VARCHAR(20) NOT NULL COMMENT '原始学期',
|
||||
|
||||
-- 解析后字段
|
||||
academic_year INT NOT NULL COMMENT '学年',
|
||||
semester TINYINT NOT NULL COMMENT '学期(1/2)',
|
||||
month TINYINT NOT NULL COMMENT '月份(1-12)',
|
||||
score DECIMAL(5,2) NOT NULL COMMENT '月度分数',
|
||||
|
||||
-- 系统关联字段
|
||||
student_id BIGINT COMMENT '学生ID',
|
||||
class_id BIGINT COMMENT '班级ID',
|
||||
class_teacher_id BIGINT COMMENT '班主任ID',
|
||||
|
||||
-- 扩展字段
|
||||
remark VARCHAR(500) COMMENT '备注信息',
|
||||
processing_status VARCHAR(20) DEFAULT 'parsed' COMMENT '处理状态(parsed/linked/imported/error)',
|
||||
error_msg TEXT COMMENT '错误信息',
|
||||
create_time DATETIME DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
||||
update_time DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
|
||||
|
||||
-- 索引优化
|
||||
INDEX idx_temp_id (temp_id),
|
||||
INDEX idx_student_no (student_no),
|
||||
INDEX idx_processing_status (processing_status),
|
||||
INDEX idx_academic_year_semester (academic_year, semester),
|
||||
INDEX idx_student_year_semester_month (student_no, academic_year, semester, month),
|
||||
INDEX idx_create_time (create_time)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='学生操行分解析后中间表';
|
||||
|
||||
-- ===========================================
|
||||
-- 迁移日志表(可选,用于记录详细的迁移过程)
|
||||
-- ===========================================
|
||||
DROP TABLE IF EXISTS temp_conduct_score_migration_log;
|
||||
CREATE TABLE temp_conduct_score_migration_log (
|
||||
id BIGINT AUTO_INCREMENT PRIMARY KEY COMMENT '主键ID',
|
||||
script_name VARCHAR(100) NOT NULL COMMENT '脚本名称',
|
||||
operation VARCHAR(100) NOT NULL COMMENT '操作类型',
|
||||
record_count INT DEFAULT 0 COMMENT '处理记录数',
|
||||
success_count INT DEFAULT 0 COMMENT '成功数',
|
||||
error_count INT DEFAULT 0 COMMENT '失败数',
|
||||
error_details TEXT COMMENT '错误详情',
|
||||
start_time DATETIME NOT NULL COMMENT '开始时间',
|
||||
end_time DATETIME COMMENT '结束时间',
|
||||
duration_seconds INT COMMENT '耗时(秒)',
|
||||
status VARCHAR(20) DEFAULT 'running' COMMENT '状态(running/success/error)',
|
||||
create_time DATETIME DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
||||
|
||||
INDEX idx_script_operation (script_name, operation),
|
||||
INDEX idx_status (status),
|
||||
INDEX idx_create_time (create_time)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='操行分迁移日志表';
|
||||
Reference in new issue
Block a user