Files
hzdyjs/docs/设计文档/database/学工管理-学生信息管理/execute-phase1.sql
T
2025-07-19 10:18:27 +08:00

70 lines
2.3 KiB
SQL

-- 第一阶段:数据库调整执行脚本
-- 执行时间:2025-01-13
-- 说明:按顺序执行所有数据库调整脚本
-- 开始事务
START TRANSACTION;
-- 记录开始时间
SELECT NOW() as start_time, 'Phase 1: Database Adjustment Started' as message;
-- 1. 批次表结构增强
SOURCE 01-batch-table-enhancement.sql;
-- 2. 创建批次学生关联表
SOURCE 02-batch-student-relation.sql;
-- 3. 创建批次操作日志表
SOURCE 03-batch-log-table.sql;
-- 4. 学生信息表增强
SOURCE 04-student-info-enhancement.sql;
-- 5. 创建视图和存储过程
SOURCE 05-batch-views-and-procedures.sql;
-- 6. 插入系统配置数据
INSERT INTO sys_config (config_name, config_key, config_value, config_type, remark, create_by, create_time) VALUES
('学生信息采集批次默认提醒时间', 'student.batch.default.remind.hours', '24', 'Y', '创建批次时的默认提醒时间(小时)', 1, NOW()),
('学生信息采集批次自动关闭', 'student.batch.auto.close', 'true', 'Y', '批次是否自动关闭', 1, NOW()),
('学生信息采集批次最大编辑次数', 'student.batch.max.edit.count', '10', 'Y', '学生在批次期间最大编辑次数', 1, NOW()),
('学生信息采集批次通知开关', 'student.batch.notification.enabled', 'true', 'Y', '是否启用批次通知', 1, NOW())
ON DUPLICATE KEY UPDATE config_value = VALUES(config_value);
-- 7. 验证数据完整性
SELECT
'Table verification' as check_type,
COUNT(*) as record_count,
'xg_collection_batch' as table_name
FROM xg_collection_batch
UNION ALL
SELECT
'Table verification' as check_type,
COUNT(*) as record_count,
'xg_collection_batch_student' as table_name
FROM xg_collection_batch_student
UNION ALL
SELECT
'Table verification' as check_type,
COUNT(*) as record_count,
'xg_collection_batch_log' as table_name
FROM xg_collection_batch_log;
-- 8. 检查新增字段
SHOW COLUMNS FROM xg_collection_batch LIKE 'target_%';
SHOW COLUMNS FROM xg_student_info LIKE 'last_batch_%';
-- 9. 检查视图
SHOW TABLES LIKE 'v_%';
-- 10. 检查存储过程
SHOW PROCEDURE STATUS WHERE Name LIKE 'sp_%';
-- 记录完成时间
SELECT NOW() as end_time, 'Phase 1: Database Adjustment Completed Successfully!' as message;
-- 提交事务
COMMIT;
-- 如果出错,回滚事务
-- ROLLBACK;