wuzhen a2222f63cb wuzhen update 1 год назад
..
oracle 1ab9f9c458 init 1 год назад
postgres 1ab9f9c458 init 1 год назад
sqlserver 1ab9f9c458 init 1 год назад
update 4b9be58b18 心理健康测评完成 1 год назад
20-fix-student-fields-mapping.sql 6820ebc45f wuzhen 提交代码 1 год назад
21-add-missing-basic-fields.sql 6820ebc45f wuzhen 提交代码 1 год назад
CHANGELOG-学生数据导入脚本.md 661a513f57 feat: 新增根据权限标识获取用户列表功能 1 год назад
README-学生数据生成.md 661a513f57 feat: 新增根据权限标识获取用户列表功能 1 год назад
add-head-teacher-role.sql cc03e81f49 wuzhen 20250723提交 1 год назад
check-table-structure.sql 6820ebc45f wuzhen 提交代码 1 год назад
class-basic-data.sql 2f56204113 wuzhen 信息采集和统计分析完成 1 год назад
complete-student-data-fixed.sql 2f56204113 wuzhen 信息采集和统计分析完成 1 год назад
complete-student-data.sql 661a513f57 feat: 新增根据权限标识获取用户列表功能 1 год назад
create-collection-batch-tables.sql 2f56204113 wuzhen 信息采集和统计分析完成 1 год назад
create-missing-tables.sql 2f56204113 wuzhen 信息采集和统计分析完成 1 год назад
cw-budget-approval-menu-fixed-path.sql e4e4679da9 wuzhen updat 1 год назад
cw-budget-approval-menu-fixed.sql e4e4679da9 wuzhen updat 1 год назад
cw-budget-approval-menu.sql e4e4679da9 wuzhen updat 1 год назад
fix-college-vs-collage-fields.sql 0917c7f156 wuzhen 提交 1 год назад
fix-enrollment-college-fields.sql 0917c7f156 wuzhen 提交 1 год назад
fix-enrollment-dict-data.sql cc03e81f49 wuzhen 20250723提交 1 год назад
fix-zsjy-graduate-info-create-dept-field.sql e4e4679da9 wuzhen updat 1 год назад
fix_all_graduate_dicts.sql e4e4679da9 wuzhen updat 1 год назад
fix_education_level_dict.sql e4e4679da9 wuzhen updat 1 год назад
fix_graduate_menu_structure.sql e4e4679da9 wuzhen updat 1 год назад
generate_student_data.py 661a513f57 feat: 新增根据权限标识获取用户列表功能 1 год назад
import-student-data.sh 661a513f57 feat: 新增根据权限标识获取用户列表功能 1 год назад
insert-zsjy-major-dict-data.sql e4e4679da9 wuzhen updat 1 год назад
ry_job.sql 1ab9f9c458 init 1 год назад
ry_vue_5.X.sql 1ab9f9c458 init 1 год назад
ry_workflow.sql 1ab9f9c458 init 1 год назад
scholarship-review-menu-permissions.sql a2222f63cb wuzhen update 1 год назад
student-data-generator.sql 661a513f57 feat: 新增根据权限标识获取用户列表功能 1 год назад
test-import.sh 661a513f57 feat: 新增根据权限标识获取用户列表功能 1 год назад
xg-dict-data.sql 661a513f57 feat: 新增根据权限标识获取用户列表功能 1 год назад
xg_dorm_manager.sql 225a268e32 提交宿管代码 1 год назад
zsjy-enrollment-dict-data.sql 4a7021226e 招生就业开发备份@wuzhen 1 год назад
zsjy_graduate_dict_data.sql e4e4679da9 wuzhen updat 1 год назад
zsjy_graduate_info.sql e4e4679da9 wuzhen updat 1 год назад
zsjy_graduate_info_menu.sql e4e4679da9 wuzhen updat 1 год назад

README-学生数据生成.md

学生数据生成和导入工具

🎯 功能概述

本工具包提供了完整的学生信息数据生成和导入功能,包括:

  • 3个新班级信息
  • 150条学生信息数据
  • 150条班级学生关联关系
  • 完整的数据验证查询

📁 文件说明

核心文件

  • generate_student_data.py - 数据生成脚本(Python)
  • complete-student-data.sql - 完整数据SQL文件(1375行)
  • import-student-data.sh - 数据导入脚本(Shell)
  • student-data-generator.sql - 基础模板文件

生成的数据结构

班级信息(3个班级)

班级ID 班级代码 班级名称 专业 学院 总人数 男生 女生
1100001 CS2024001 计算机科学与技术2024级1班 计算机科学与技术 计算机科学与技术学院 50 28 22
1100002 EE2024001 电子信息工程2024级1班 电子信息工程 电子信息工程学院 50 32 18
1100003 BM2024001 工商管理2024级1班 工商管理 经济管理学院 50 20 30

学生信息字段

  • 基本信息: 姓名、性别、生日、身份证号、民族、政治面貌
  • 学籍信息: 学号、专业、班级、入学时间、学制、学历层次
  • 联系信息: 手机、邮箱、QQ、微信、家庭地址、紧急联系人
  • 家庭信息: 父母姓名、联系方式、家庭年收入
  • 其他信息: 身高体重、血型、银行卡信息、高中背景、入学成绩

班级职务分配

  • 班长: 每班1名(第1位学生)
  • 副班长: 每班1名(第2位学生)
  • 学习委员: 每班1名(第3位学生)
  • 组织委员: 每班1名(第4位学生)
  • 宣传委员: 每班1名(第5位学生)
  • 普通成员: 其余学生

🚀 使用方法

方法一:直接导入SQL文件

# 进入SQL目录
cd backend/script/sql

# 直接执行SQL文件
mysql -u root -p hzdyjs_xg < complete-student-data.sql

方法二:使用导入脚本(推荐)

# 进入SQL目录
cd backend/script/sql

# 运行导入脚本
./import-student-data.sh

脚本会自动:

  1. 从项目配置文件获取数据库连接信息
  2. 显示连接参数确认
  3. 确认导入操作
  4. 显示导入结果

注意:脚本会自动从 application-dev.yml 配置文件中读取数据库连接信息,无需手动输入。

方法三:重新生成数据

# 进入SQL目录
cd backend/script/sql

# 运行Python生成脚本
python3 generate_student_data.py

# 导入新生成的数据
./import-student-data.sh

📊 数据特点

真实性和逻辑性

  • 姓名: 使用中国常见姓氏和名字组合
  • 身份证号: 符合真实的身份证号码规则
  • 联系方式: 符合中国手机号码格式
  • 地址信息: 使用杭州市真实的区域和道路名称
  • 身高体重: 符合大学生群体的正常范围
  • 学校信息: 使用杭州市真实的高中名称

数据完整性

  • 所有必填字段都有值
  • 关联字段保持一致性
  • 性别与身高体重数据匹配
  • 家庭联系信息完整

业务逻辑

  • 学号按班级顺序生成
  • 男女比例符合专业特点
  • 班级职务合理分配
  • 入学成绩在合理范围内

🔍 数据验证

SQL文件包含完整的验证查询:

-- 验证班级信息
SELECT id, class_code, class_name, college_name, major, current_count, male_count, female_count 
FROM xg_class_info 
WHERE id IN (1100001, 1100002, 1100003);

-- 验证学生信息统计
SELECT 
  class_id,
  class_name,
  COUNT(*) as total_count,
  SUM(CASE WHEN gender = 'M' THEN 1 ELSE 0 END) as male_count,
  SUM(CASE WHEN gender = 'F' THEN 1 ELSE 0 END) as female_count
FROM xg_student_info 
WHERE class_id IN (1100001, 1100002, 1100003)
GROUP BY class_id, class_name;

-- 验证班级干部分布
SELECT 
  ci.class_name,
  cs.class_position,
  cs.student_name,
  si.gender
FROM xg_class_student cs
JOIN xg_class_info ci ON cs.class_id = ci.id
JOIN xg_student_info si ON cs.student_id = si.id
WHERE cs.class_id IN (1100001, 1100002, 1100003)
AND cs.class_position != 'member'
ORDER BY cs.class_id, cs.position_level;

🛠️ 技术细节

数据库连接配置

  • 配置来源: backend/ruoyi-admin/src/main/resources/application-dev.yml
  • 主机地址: 47.99.164.66:3306
  • 数据库名: hzdyjs_xg
  • 用户认证: root/hn02le.34lkdLKD

数据库表结构

  • xg_class_info - 班级信息表
  • xg_student_info - 学生信息表
  • xg_class_student - 班级学生关联表

主键和外键

  • 学生ID范围: 2100001 ~ 2100150
  • 班级ID范围: 1100001 ~ 1100003
  • 关联ID范围: 3100001 ~ 3100150

数据类型和约束

  • 符合数据库表结构定义
  • 包含必要的索引和约束
  • 支持软删除机制

🔧 自定义配置

修改班级信息

编辑 generate_student_data.py 中的 classes 配置:

classes = [
    {
        'id': 1100001, 
        'code': 'CS2024001', 
        'name': '计算机科学与技术2024级1班', 
        'major': '计算机科学与技术', 
        'college': '计算机科学与技术学院', 
        'male_count': 28, 
        'female_count': 22
    },
    # 添加更多班级...
]

修改数据范围

  • 修改学生数量: 调整 male_count 和 female_count
  • 修改ID范围: 调整 student_id 起始值
  • 修改姓名库: 编辑 surnames、male_names、female_names 数组

修改数据规则

  • 身份证号规则: 修改 area_code 和 birth_year 范围
  • 联系方式规则: 修改 phone 生成规则
  • 地址信息: 修改 address_prefixes 和 road_names

🚨 注意事项

数据库准备

  1. 确保数据库 hzdyjs_xg 已存在
  2. 确保相关数据表已创建
  3. 确保用户有足够的权限

数据冲突

  • 主键冲突: 如果ID已存在,使用 ON DUPLICATE KEY UPDATE
  • 唯一约束: 学号、身份证号等字段的唯一性
  • 外键约束: 确保关联表的数据完整性

性能考虑

  • 批量插入: 使用单条INSERT语句插入多条记录
  • 索引优化: 在大量数据导入前可以考虑删除索引
  • 事务管理: 使用事务确保数据一致性

📞 技术支持

如有问题,请检查:

  1. 数据库连接配置是否正确
  2. 数据表结构是否匹配
  3. 数据字段是否完整
  4. 权限配置是否正确

📈 扩展功能

未来可能的扩展

  • 支持更多专业和学院
  • 添加成绩信息数据
  • 添加课程选择数据
  • 添加学生照片信息
  • 支持历史数据导入

数据分析功能

  • 学生信息统计报表
  • 班级结构分析
  • 生源地分析
  • 成绩分布分析

版本: V1.0.0
更新时间: 2025-01-14
维护人: Cursor AI 辅助开发