|
|
1 mesiac pred | |
|---|---|---|
| .. | ||
| README.md | 10 mesiacov pred | |
| data.conf | 1 mesiac pred | |
| data.conf.prod | 10 mesiacov pred | |
| process_student_id_card_refresh.sh | 10 mesiacov pred | |
| run_refresh.sh | 10 mesiacov pred | |
| 学生学籍号刷新脚本设计说明.md | 1 mesiac pred | |
本脚本用于自动刷新学生信息表(xg_student_msg)中的学籍号字段(ext_field2)。
刷新规则: ext_field2 = 'G' + id_card
# 进入脚本目录
cd 学籍号刷新
# 执行一次性刷新所有学籍号
./run_refresh.sh once
# 或者直接运行
./process_student_id_card_refresh.sh once
# 前台执行(会一直运行)
./run_refresh.sh monitor
# 后台执行(推荐方式)
./run_refresh.sh bg
最新执行结果(2025-12-26):
v1.0.2 更新 (2025-12-26):
bg模式,支持一键后台启动守护进程v1.0.1 更新 (2025-12-26):
SELECT ROW_COUNT()获取受影响行数,一次查询完成学籍号刷新/
├── data.conf # 开发环境配置
├── data.conf.prod # 生产环境配置
├── process_student_id_card_refresh.sh # 主脚本
├── run_refresh.sh # 快速执行脚本
├── README.md # 使用说明
├── 学生学籍号刷新脚本设计说明.md # 详细设计文档
└── student_id_card_refresh/ # 日志目录
└── *.log # 执行日志
# 数据库配置
DB_HOST="47.99.164.66"
DB_PORT="3306"
DB_NAME="hzdyjs_xg"
DB_USER="root"
DB_PASS="your_password"
# 处理配置
BATCH_SIZE=500 # 批次大小
CYCLE_INTERVAL=600 # 检查间隔(秒,默认10分钟)
-- 统计学籍号生成情况
SELECT
COUNT(*) as total_students,
SUM(CASE WHEN ext_field2 LIKE 'G%' THEN 1 ELSE 0 END) as with_id_card,
SUM(CASE WHEN ext_field2 IS NULL OR ext_field2 = '' THEN 1 ELSE 0 END) as need_refresh
FROM xg_student_msg
WHERE deleted = 0;
-- 查看学籍号样例
SELECT student_no, name, id_card, ext_field2
FROM xg_student_msg
WHERE ext_field2 LIKE 'G%'
AND deleted = 0
LIMIT 5;
如有问题,请参考:
最后更新: 2025-12-26 脚本版本: v1.0.2