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

360 lines
22 KiB
SQL

-- ==========================================
-- 学生信息管理页面下拉菜单修复脚本
-- 版本:V1.0.0
-- 功能:解决搜索栏性别、班级、学籍状态下拉菜单为空的问题
-- 作者:Cursor AI 辅助
-- 时间:2025-01-14
-- 问题:前端下拉菜单空白、班级选项空白、学籍状态空白
-- ==========================================
USE hzdyjs_xg;
-- 设置字符集
SET NAMES utf8mb4;
SET FOREIGN_KEY_CHECKS = 0;
-- ==============================================
-- 1. 创建学工专用字典类型
-- ==============================================
-- 学生性别字典类型
INSERT INTO sys_dict_type (dict_id, tenant_id, dict_name, dict_type, create_dept, create_by, create_time, remark)
VALUES (1001, '000000', '学生性别', 'xg_gender', 103, 1, NOW(), '学生性别字典')
ON DUPLICATE KEY UPDATE dict_name = VALUES(dict_name), remark = VALUES(remark);
-- 学生学籍状态字典类型
INSERT INTO sys_dict_type (dict_id, tenant_id, dict_name, dict_type, create_dept, create_by, create_time, remark)
VALUES (1002, '000000', '学籍状态', 'xg_student_status', 103, 1, NOW(), '学生学籍状态字典')
ON DUPLICATE KEY UPDATE dict_name = VALUES(dict_name), remark = VALUES(remark);
-- 信息状态字典类型
INSERT INTO sys_dict_type (dict_id, tenant_id, dict_name, dict_type, create_dept, create_by, create_time, remark)
VALUES (1003, '000000', '信息状态', 'xg_info_status', 103, 1, NOW(), '学生信息状态字典')
ON DUPLICATE KEY UPDATE dict_name = VALUES(dict_name), remark = VALUES(remark);
-- 学历层次字典类型
INSERT INTO sys_dict_type (dict_id, tenant_id, dict_name, dict_type, create_dept, create_by, create_time, remark)
VALUES (1004, '000000', '学历层次', 'xg_education_level', 103, 1, NOW(), '学历层次字典')
ON DUPLICATE KEY UPDATE dict_name = VALUES(dict_name), remark = VALUES(remark);
-- 培养方式字典类型
INSERT INTO sys_dict_type (dict_id, tenant_id, dict_name, dict_type, create_dept, create_by, create_time, remark)
VALUES (1005, '000000', '培养方式', 'xg_training_type', 103, 1, NOW(), '培养方式字典')
ON DUPLICATE KEY UPDATE dict_name = VALUES(dict_name), remark = VALUES(remark);
-- 政治面貌字典类型
INSERT INTO sys_dict_type (dict_id, tenant_id, dict_name, dict_type, create_dept, create_by, create_time, remark)
VALUES (1006, '000000', '政治面貌', 'xg_political_status', 103, 1, NOW(), '政治面貌字典')
ON DUPLICATE KEY UPDATE dict_name = VALUES(dict_name), remark = VALUES(remark);
-- ==============================================
-- 2. 创建学工专用字典数据
-- ==============================================
-- 学生性别字典数据
INSERT INTO sys_dict_data (dict_code, tenant_id, dict_sort, dict_label, dict_value, dict_type, css_class, list_class, is_default, create_dept, create_by, create_time, remark)
VALUES (2001, '000000', 1, '男', 'M', 'xg_gender', '', 'primary', 'Y', 103, 1, NOW(), '男性')
ON DUPLICATE KEY UPDATE dict_label = VALUES(dict_label), list_class = VALUES(list_class);
INSERT INTO sys_dict_data (dict_code, tenant_id, dict_sort, dict_label, dict_value, dict_type, css_class, list_class, is_default, create_dept, create_by, create_time, remark)
VALUES (2002, '000000', 2, '女', 'F', 'xg_gender', '', 'danger', 'N', 103, 1, NOW(), '女性')
ON DUPLICATE KEY UPDATE dict_label = VALUES(dict_label), list_class = VALUES(list_class);
-- 学籍状态字典数据
INSERT INTO sys_dict_data (dict_code, tenant_id, dict_sort, dict_label, dict_value, dict_type, css_class, list_class, is_default, create_dept, create_by, create_time, remark)
VALUES (2011, '000000', 1, '在籍', '1', 'xg_student_status', '', 'success', 'Y', 103, 1, NOW(), '在籍学生')
ON DUPLICATE KEY UPDATE dict_label = VALUES(dict_label), list_class = VALUES(list_class);
INSERT INTO sys_dict_data (dict_code, tenant_id, dict_sort, dict_label, dict_value, dict_type, css_class, list_class, is_default, create_dept, create_by, create_time, remark)
VALUES (2012, '000000', 2, '休学', '2', 'xg_student_status', '', 'warning', 'N', 103, 1, NOW(), '休学学生')
ON DUPLICATE KEY UPDATE dict_label = VALUES(dict_label), list_class = VALUES(list_class);
INSERT INTO sys_dict_data (dict_code, tenant_id, dict_sort, dict_label, dict_value, dict_type, css_class, list_class, is_default, create_dept, create_by, create_time, remark)
VALUES (2013, '000000', 3, '复学', '3', 'xg_student_status', '', 'info', 'N', 103, 1, NOW(), '复学学生')
ON DUPLICATE KEY UPDATE dict_label = VALUES(dict_label), list_class = VALUES(list_class);
INSERT INTO sys_dict_data (dict_code, tenant_id, dict_sort, dict_label, dict_value, dict_type, css_class, list_class, is_default, create_dept, create_by, create_time, remark)
VALUES (2014, '000000', 4, '退学', '4', 'xg_student_status', '', 'danger', 'N', 103, 1, NOW(), '退学学生')
ON DUPLICATE KEY UPDATE dict_label = VALUES(dict_label), list_class = VALUES(list_class);
INSERT INTO sys_dict_data (dict_code, tenant_id, dict_sort, dict_label, dict_value, dict_type, css_class, list_class, is_default, create_dept, create_by, create_time, remark)
VALUES (2015, '000000', 5, '毕业', '5', 'xg_student_status', '', 'success', 'N', 103, 1, NOW(), '毕业学生')
ON DUPLICATE KEY UPDATE dict_label = VALUES(dict_label), list_class = VALUES(list_class);
INSERT INTO sys_dict_data (dict_code, tenant_id, dict_sort, dict_label, dict_value, dict_type, css_class, list_class, is_default, create_dept, create_by, create_time, remark)
VALUES (2016, '000000', 6, '肄业', '6', 'xg_student_status', '', 'warning', 'N', 103, 1, NOW(), '肄业学生')
ON DUPLICATE KEY UPDATE dict_label = VALUES(dict_label), list_class = VALUES(list_class);
INSERT INTO sys_dict_data (dict_code, tenant_id, dict_sort, dict_label, dict_value, dict_type, css_class, list_class, is_default, create_dept, create_by, create_time, remark)
VALUES (2017, '000000', 7, '转学', '7', 'xg_student_status', '', 'info', 'N', 103, 1, NOW(), '转学学生')
ON DUPLICATE KEY UPDATE dict_label = VALUES(dict_label), list_class = VALUES(list_class);
-- 信息状态字典数据
INSERT INTO sys_dict_data (dict_code, tenant_id, dict_sort, dict_label, dict_value, dict_type, css_class, list_class, is_default, create_dept, create_by, create_time, remark)
VALUES (2021, '000000', 1, '正常', '1', 'xg_info_status', '', 'success', 'Y', 103, 1, NOW(), '信息正常')
ON DUPLICATE KEY UPDATE dict_label = VALUES(dict_label), list_class = VALUES(list_class);
INSERT INTO sys_dict_data (dict_code, tenant_id, dict_sort, dict_label, dict_value, dict_type, css_class, list_class, is_default, create_dept, create_by, create_time, remark)
VALUES (2022, '000000', 2, '待审核', '2', 'xg_info_status', '', 'warning', 'N', 103, 1, NOW(), '待审核')
ON DUPLICATE KEY UPDATE dict_label = VALUES(dict_label), list_class = VALUES(list_class);
INSERT INTO sys_dict_data (dict_code, tenant_id, dict_sort, dict_label, dict_value, dict_type, css_class, list_class, is_default, create_dept, create_by, create_time, remark)
VALUES (2023, '000000', 3, '审核中', '3', 'xg_info_status', '', 'primary', 'N', 103, 1, NOW(), '审核中')
ON DUPLICATE KEY UPDATE dict_label = VALUES(dict_label), list_class = VALUES(list_class);
INSERT INTO sys_dict_data (dict_code, tenant_id, dict_sort, dict_label, dict_value, dict_type, css_class, list_class, is_default, create_dept, create_by, create_time, remark)
VALUES (2024, '000000', 4, '已驳回', '4', 'xg_info_status', '', 'danger', 'N', 103, 1, NOW(), '已驳回')
ON DUPLICATE KEY UPDATE dict_label = VALUES(dict_label), list_class = VALUES(list_class);
INSERT INTO sys_dict_data (dict_code, tenant_id, dict_sort, dict_label, dict_value, dict_type, css_class, list_class, is_default, create_dept, create_by, create_time, remark)
VALUES (2025, '000000', 5, '已锁定', '5', 'xg_info_status', '', 'info', 'N', 103, 1, NOW(), '已锁定')
ON DUPLICATE KEY UPDATE dict_label = VALUES(dict_label), list_class = VALUES(list_class);
-- 学历层次字典数据
INSERT INTO sys_dict_data (dict_code, tenant_id, dict_sort, dict_label, dict_value, dict_type, css_class, list_class, is_default, create_dept, create_by, create_time, remark)
VALUES (2031, '000000', 1, '专科', '1', 'xg_education_level', '', 'info', 'N', 103, 1, NOW(), '专科层次')
ON DUPLICATE KEY UPDATE dict_label = VALUES(dict_label), list_class = VALUES(list_class);
INSERT INTO sys_dict_data (dict_code, tenant_id, dict_sort, dict_label, dict_value, dict_type, css_class, list_class, is_default, create_dept, create_by, create_time, remark)
VALUES (2032, '000000', 2, '本科', '2', 'xg_education_level', '', 'primary', 'Y', 103, 1, NOW(), '本科层次')
ON DUPLICATE KEY UPDATE dict_label = VALUES(dict_label), list_class = VALUES(list_class);
INSERT INTO sys_dict_data (dict_code, tenant_id, dict_sort, dict_label, dict_value, dict_type, css_class, list_class, is_default, create_dept, create_by, create_time, remark)
VALUES (2033, '000000', 3, '硕士', '3', 'xg_education_level', '', 'success', 'N', 103, 1, NOW(), '硕士层次')
ON DUPLICATE KEY UPDATE dict_label = VALUES(dict_label), list_class = VALUES(list_class);
INSERT INTO sys_dict_data (dict_code, tenant_id, dict_sort, dict_label, dict_value, dict_type, css_class, list_class, is_default, create_dept, create_by, create_time, remark)
VALUES (2034, '000000', 4, '博士', '4', 'xg_education_level', '', 'warning', 'N', 103, 1, NOW(), '博士层次')
ON DUPLICATE KEY UPDATE dict_label = VALUES(dict_label), list_class = VALUES(list_class);
-- 培养方式字典数据
INSERT INTO sys_dict_data (dict_code, tenant_id, dict_sort, dict_label, dict_value, dict_type, css_class, list_class, is_default, create_dept, create_by, create_time, remark)
VALUES (2041, '000000', 1, '全日制', '1', 'xg_training_type', '', 'success', 'Y', 103, 1, NOW(), '全日制培养')
ON DUPLICATE KEY UPDATE dict_label = VALUES(dict_label), list_class = VALUES(list_class);
INSERT INTO sys_dict_data (dict_code, tenant_id, dict_sort, dict_label, dict_value, dict_type, css_class, list_class, is_default, create_dept, create_by, create_time, remark)
VALUES (2042, '000000', 2, '非全日制', '2', 'xg_training_type', '', 'warning', 'N', 103, 1, NOW(), '非全日制培养')
ON DUPLICATE KEY UPDATE dict_label = VALUES(dict_label), list_class = VALUES(list_class);
INSERT INTO sys_dict_data (dict_code, tenant_id, dict_sort, dict_label, dict_value, dict_type, css_class, list_class, is_default, create_dept, create_by, create_time, remark)
VALUES (2043, '000000', 3, '函授', '3', 'xg_training_type', '', 'info', 'N', 103, 1, NOW(), '函授培养')
ON DUPLICATE KEY UPDATE dict_label = VALUES(dict_label), list_class = VALUES(list_class);
INSERT INTO sys_dict_data (dict_code, tenant_id, dict_sort, dict_label, dict_value, dict_type, css_class, list_class, is_default, create_dept, create_by, create_time, remark)
VALUES (2044, '000000', 4, '业余', '4', 'xg_training_type', '', 'primary', 'N', 103, 1, NOW(), '业余培养')
ON DUPLICATE KEY UPDATE dict_label = VALUES(dict_label), list_class = VALUES(list_class);
-- 政治面貌字典数据
INSERT INTO sys_dict_data (dict_code, tenant_id, dict_sort, dict_label, dict_value, dict_type, css_class, list_class, is_default, create_dept, create_by, create_time, remark)
VALUES (2051, '000000', 1, '中共党员', '01', 'xg_political_status', '', 'danger', 'N', 103, 1, NOW(), '中共党员')
ON DUPLICATE KEY UPDATE dict_label = VALUES(dict_label), list_class = VALUES(list_class);
INSERT INTO sys_dict_data (dict_code, tenant_id, dict_sort, dict_label, dict_value, dict_type, css_class, list_class, is_default, create_dept, create_by, create_time, remark)
VALUES (2052, '000000', 2, '中共预备党员', '02', 'xg_political_status', '', 'warning', 'N', 103, 1, NOW(), '中共预备党员')
ON DUPLICATE KEY UPDATE dict_label = VALUES(dict_label), list_class = VALUES(list_class);
INSERT INTO sys_dict_data (dict_code, tenant_id, dict_sort, dict_label, dict_value, dict_type, css_class, list_class, is_default, create_dept, create_by, create_time, remark)
VALUES (2053, '000000', 3, '共青团员', '03', 'xg_political_status', '', 'primary', 'Y', 103, 1, NOW(), '共青团员')
ON DUPLICATE KEY UPDATE dict_label = VALUES(dict_label), list_class = VALUES(list_class);
INSERT INTO sys_dict_data (dict_code, tenant_id, dict_sort, dict_label, dict_value, dict_type, css_class, list_class, is_default, create_dept, create_by, create_time, remark)
VALUES (2054, '000000', 13, '群众', '13', 'xg_political_status', '', 'info', 'N', 103, 1, NOW(), '群众')
ON DUPLICATE KEY UPDATE dict_label = VALUES(dict_label), list_class = VALUES(list_class);
-- ==============================================
-- 3. 确保学生信息表存在且结构正确
-- ==============================================
-- 创建学生信息表(如果不存在)
CREATE TABLE IF NOT EXISTS `xg_student_info` (
-- 标准基础字段(必须)
`id` bigint(20) NOT NULL COMMENT '主键ID',
`tenant_id` varchar(20) NOT NULL DEFAULT '000000' COMMENT '租户编号',
`create_dept` bigint(20) DEFAULT NULL COMMENT '创建部门',
`create_by` bigint(20) DEFAULT NULL COMMENT '创建者',
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
`update_by` bigint(20) DEFAULT NULL COMMENT '更新者',
`update_time` datetime DEFAULT NULL COMMENT '更新时间',
`deleted` tinyint(1) DEFAULT 0 COMMENT '删除标志(0代表存在 1代表删除)',
-- 基本信息字段
`student_no` varchar(32) NOT NULL COMMENT '学号',
`id_card` varchar(18) DEFAULT NULL COMMENT '身份证号',
`name` varchar(50) NOT NULL COMMENT '姓名',
`name_pinyin` varchar(200) DEFAULT NULL COMMENT '姓名拼音',
`gender` char(1) NOT NULL COMMENT '性别:M-男,F-女',
`birth_date` date DEFAULT NULL COMMENT '出生日期',
`nation` varchar(20) DEFAULT NULL COMMENT '民族',
`political_status` varchar(20) DEFAULT NULL COMMENT '政治面貌',
-- 学籍信息字段
`student_status` char(1) DEFAULT '1' COMMENT '学籍状态:1-在籍,2-休学,3-复学,4-退学,5-毕业',
`enrollment_year` int(4) DEFAULT NULL COMMENT '入学年份',
`enrollment_date` date DEFAULT NULL COMMENT '入学日期',
`school_system` int(2) DEFAULT 4 COMMENT '学制(年)',
`education_level` varchar(20) DEFAULT NULL COMMENT '学历层次',
`training_type` varchar(20) DEFAULT NULL COMMENT '培养方式',
-- 专业班级信息字段
`major_code` varchar(20) DEFAULT NULL COMMENT '专业代码',
`major_name` varchar(100) DEFAULT NULL COMMENT '专业名称',
`class_code` varchar(32) DEFAULT NULL COMMENT '班级代码',
`class_name` varchar(100) DEFAULT NULL COMMENT '班级名称',
-- 学院信息字段
`college_code` varchar(20) DEFAULT NULL COMMENT '学院代码',
`college_name` varchar(100) DEFAULT NULL COMMENT '学院名称',
-- 教师信息字段
`counselor_id` bigint(20) DEFAULT NULL COMMENT '辅导员ID',
`counselor_name` varchar(50) DEFAULT NULL COMMENT '辅导员姓名',
`class_teacher_id` bigint(20) DEFAULT NULL COMMENT '班主任ID',
`class_teacher_name` varchar(50) DEFAULT NULL COMMENT '班主任姓名',
-- 联系信息字段
`phone` varchar(20) DEFAULT NULL COMMENT '手机号码',
`email` varchar(100) DEFAULT NULL COMMENT '电子邮箱',
`qq` varchar(20) DEFAULT NULL COMMENT 'QQ号码',
`wechat` varchar(50) DEFAULT NULL COMMENT '微信号',
-- 地址信息字段
`dorm_building` varchar(50) DEFAULT NULL COMMENT '宿舍楼栋',
`dorm_room` varchar(20) DEFAULT NULL COMMENT '宿舍房间',
`home_address` varchar(200) DEFAULT NULL COMMENT '家庭地址',
`postal_code` varchar(10) DEFAULT NULL COMMENT '邮政编码',
-- 紧急联系人信息字段
`emergency_contact` varchar(50) DEFAULT NULL COMMENT '紧急联系人',
`emergency_phone` varchar(20) DEFAULT NULL COMMENT '紧急联系人电话',
`emergency_relation` varchar(20) DEFAULT NULL COMMENT '紧急联系人关系',
-- 其他信息字段
`is_from_poor_family` tinyint(1) DEFAULT 0 COMMENT '是否贫困生:0-否,1-是',
`is_minority` tinyint(1) DEFAULT 0 COMMENT '是否少数民族:0-否,1-是',
`is_disabled` tinyint(1) DEFAULT 0 COMMENT '是否残疾:0-否,1-是',
`is_orphan` tinyint(1) DEFAULT 0 COMMENT '是否孤儿:0-否,1-是',
-- 状态管理字段
`info_status` char(1) DEFAULT '1' COMMENT '信息状态:1-正常,2-待审核,3-审核中,4-已驳回,5-已锁定',
`data_source` varchar(20) DEFAULT 'manual' COMMENT '数据来源:manual-手工录入,import-批量导入,sync-系统同步',
-- 备注字段
`remark` varchar(500) DEFAULT NULL COMMENT '备注信息',
-- 主键和索引
PRIMARY KEY (`id`) USING BTREE,
UNIQUE KEY `uk_student_no_tenant` (`student_no`, `tenant_id`),
KEY `idx_tenant_id` (`tenant_id`),
KEY `idx_deleted` (`deleted`),
KEY `idx_name` (`name`),
KEY `idx_college_code` (`college_code`),
KEY `idx_class_code` (`class_code`),
KEY `idx_student_status` (`student_status`),
KEY `idx_info_status` (`info_status`),
KEY `idx_enrollment_year` (`enrollment_year`),
KEY `idx_major_code` (`major_code`),
KEY `idx_create_time` (`create_time`),
KEY `idx_college_class` (`college_code`, `class_code`),
KEY `idx_status_filter` (`tenant_id`, `student_status`, `info_status`, `deleted`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='学生信息表';
-- ==============================================
-- 4. 插入测试数据
-- ==============================================
-- 插入示例学生数据
INSERT INTO `xg_student_info` (
`id`, `tenant_id`, `student_no`, `name`, `gender`, `birth_date`, `id_card`, `phone`, `email`,
`major_code`, `major_name`, `class_code`, `class_name`,
`college_code`, `college_name`, `enrollment_year`, `student_status`, `info_status`,
`is_from_poor_family`, `is_minority`, `is_disabled`, `is_orphan`,
`create_by`, `create_time`, `update_by`, `update_time`
) VALUES
(1001, '000000', '2023001001', '张三', 'M', '2000-01-01', '110101200001010001', '13800138001', 'zhangsan@example.com',
'CS001', '计算机科学与技术', 'CS2023001', '计算机2023-1班',
'CS', '计算机学院', 2023, '1', '1',
0, 0, 0, 0,
1, NOW(), 1, NOW()),
(1002, '000000', '2023001002', '李四', 'F', '2000-02-02', '110101200002020002', '13800138002', 'lisi@example.com',
'CS001', '计算机科学与技术', 'CS2023001', '计算机2023-1班',
'CS', '计算机学院', 2023, '1', '1',
1, 0, 0, 0,
1, NOW(), 1, NOW()),
(1003, '000000', '2023002001', '王五', 'M', '2000-03-03', '110101200003030003', '13800138003', 'wangwu@example.com',
'EE001', '电子信息工程', 'EE2023001', '电子2023-1班',
'EE', '电子信息学院', 2023, '1', '1',
0, 1, 0, 0,
1, NOW(), 1, NOW()),
(1004, '000000', '2023002002', '赵六', 'F', '2000-04-04', '110101200004040004', '13800138004', 'zhaoliu@example.com',
'EE001', '电子信息工程', 'EE2023001', '电子2023-1班',
'EE', '电子信息学院', 2023, '2', '1',
0, 0, 0, 0,
1, NOW(), 1, NOW()),
(1005, '000000', '2023003001', '孙七', 'M', '2000-05-05', '110101200005050005', '13800138005', 'sunqi@example.com',
'BM001', '工商管理', 'BM2023001', '管理2023-1班',
'BM', '经济管理学院', 2023, '1', '1',
0, 0, 0, 0,
1, NOW(), 1, NOW()),
(1006, '000000', '2022001001', '周八', 'F', '1999-06-06', '110101199906060006', '13800138006', 'zhouba@example.com',
'CS001', '计算机科学与技术', 'CS2022001', '计算机2022-1班',
'CS', '计算机学院', 2022, '1', '1',
0, 0, 0, 0,
1, NOW(), 1, NOW()),
(1007, '000000', '2022001002', '吴九', 'M', '1999-07-07', '110101199907070007', '13800138007', 'wujiu@example.com',
'CS001', '计算机科学与技术', 'CS2022001', '计算机2022-1班',
'CS', '计算机学院', 2022, '5', '1',
0, 0, 0, 0,
1, NOW(), 1, NOW()),
(1008, '000000', '2024001001', '郑十', 'F', '2001-08-08', '110101200108080008', '13800138008', 'zhengshi@example.com',
'CS002', '软件工程', 'CS2024001', '软件2024-1班',
'CS', '计算机学院', 2024, '1', '1',
0, 0, 0, 0,
1, NOW(), 1, NOW())
ON DUPLICATE KEY UPDATE
name = VALUES(name),
gender = VALUES(gender),
class_name = VALUES(class_name),
college_name = VALUES(college_name),
student_status = VALUES(student_status),
update_time = NOW();
-- ==============================================
-- 5. 验证数据创建结果
-- ==============================================
-- 验证字典类型创建
SELECT '=== 字典类型验证 ===' as info;
SELECT dict_id, dict_name, dict_type FROM sys_dict_type WHERE dict_type LIKE 'xg_%' ORDER BY dict_id;
-- 验证字典数据创建
SELECT '=== 字典数据验证 ===' as info;
SELECT dict_type, dict_label, dict_value, list_class FROM sys_dict_data WHERE dict_type LIKE 'xg_%' ORDER BY dict_type, dict_sort;
-- 验证学生信息数据
SELECT '=== 学生信息验证 ===' as info;
SELECT student_no, name, gender, class_name, college_name, student_status, info_status FROM xg_student_info ORDER BY student_no;
-- 验证班级选项数据
SELECT '=== 班级选项验证 ===' as info;
SELECT DISTINCT class_code, class_name, college_code, college_name FROM xg_student_info WHERE class_code IS NOT NULL ORDER BY class_code;
-- 验证学院选项数据
SELECT '=== 学院选项验证 ===' as info;
SELECT DISTINCT college_code, college_name FROM xg_student_info WHERE college_code IS NOT NULL ORDER BY college_code;
-- 统计数据
SELECT '=== 统计数据验证 ===' as info;
SELECT
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,
SUM(CASE WHEN student_status = '1' THEN 1 ELSE 0 END) as active_count,
SUM(CASE WHEN student_status = '2' THEN 1 ELSE 0 END) as suspended_count,
SUM(CASE WHEN student_status = '5' THEN 1 ELSE 0 END) as graduated_count
FROM xg_student_info
WHERE deleted = 0;
-- 恢复外键检查
SET FOREIGN_KEY_CHECKS = 1;
SELECT '学生信息管理页面下拉菜单修复完成!' as result;