学院专业班级字段修复验证.sql 4.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112
  1. -- ==============================
  2. -- 学院专业班级字段修复验证脚本
  3. -- 创建时间: 2025-01-15
  4. -- 说明: 验证修复后的学院、专业、班级字段写入情况
  5. -- ==============================
  6. USE `hzdyjs_xg`;
  7. -- 1. 清理之前的测试数据
  8. DELETE FROM xg_student_info WHERE student_no = 'TEST004';
  9. -- 2. 测试插入数据(包含学院、专业、班级的代码和名称)
  10. INSERT INTO xg_student_info (
  11. student_no, id_card, name, gender, nationality, political_status, student_status,
  12. enrollment_year, school_system,
  13. college_code, college_name, major_code, major_name, class_code, class_name, grade,
  14. phone, email, info_status, data_source, is_complete, completion_rate,
  15. remark, create_dept, create_by, create_time, update_by, update_time, tenant_id
  16. ) VALUES (
  17. 'TEST004', '666666666666666666', '测试学生4', '男', '汉族', '团员', '1',
  18. 2025, 4,
  19. 'CS', '计算机学院', 'CS001', '计算机科学与技术', 'CS2025001', '计算机科学与技术2025级1班', '2025',
  20. '13800000003', 'test4@example.com', 'active', 'manual', 1, 100.00,
  21. '测试学院专业班级字段修复', 103, 1, NOW(), 1, NOW(), '000000'
  22. );
  23. -- 3. 验证插入成功,检查所有相关字段
  24. SELECT '验证学院专业班级字段插入成功...' as message;
  25. SELECT
  26. student_no,
  27. name,
  28. college_code,
  29. college_name,
  30. major_code,
  31. major_name,
  32. class_code,
  33. class_name,
  34. grade,
  35. info_status
  36. FROM xg_student_info
  37. WHERE student_no = 'TEST004';
  38. -- 4. 检查字段是否为空
  39. SELECT '检查字段是否为空...' as message;
  40. SELECT
  41. CASE WHEN college_code IS NULL OR college_code = '' THEN '学院代码为空' ELSE CONCAT('学院代码: ', college_code) END as college_code_status,
  42. CASE WHEN college_name IS NULL OR college_name = '' THEN '学院名称为空' ELSE CONCAT('学院名称: ', college_name) END as college_name_status,
  43. CASE WHEN major_code IS NULL OR major_code = '' THEN '专业代码为空' ELSE CONCAT('专业代码: ', major_code) END as major_code_status,
  44. CASE WHEN major_name IS NULL OR major_name = '' THEN '专业名称为空' ELSE CONCAT('专业名称: ', major_name) END as major_name_status,
  45. CASE WHEN class_code IS NULL OR class_code = '' THEN '班级代码为空' ELSE CONCAT('班级代码: ', class_code) END as class_code_status,
  46. CASE WHEN class_name IS NULL OR class_name = '' THEN '班级名称为空' ELSE CONCAT('班级名称: ', class_name) END as class_name_status
  47. FROM xg_student_info
  48. WHERE student_no = 'TEST004';
  49. -- 5. 测试更新操作
  50. UPDATE xg_student_info
  51. SET
  52. college_code = 'IT',
  53. college_name = '信息技术学院',
  54. major_code = 'SE001',
  55. major_name = '软件工程',
  56. class_code = 'SE2025001',
  57. class_name = '软件工程2025级1班',
  58. update_by = 1,
  59. update_time = NOW()
  60. WHERE student_no = 'TEST004';
  61. -- 6. 验证更新成功
  62. SELECT '验证更新成功...' as message;
  63. SELECT
  64. student_no,
  65. name,
  66. college_code,
  67. college_name,
  68. major_code,
  69. major_name,
  70. class_code,
  71. class_name,
  72. grade
  73. FROM xg_student_info
  74. WHERE student_no = 'TEST004';
  75. -- 7. 检查数据完整性
  76. SELECT '检查数据完整性...' as message;
  77. SELECT
  78. CASE
  79. WHEN college_code IS NOT NULL AND college_name IS NOT NULL THEN '学院信息完整'
  80. ELSE '学院信息不完整'
  81. END as college_integrity,
  82. CASE
  83. WHEN major_code IS NOT NULL AND major_name IS NOT NULL THEN '专业信息完整'
  84. ELSE '专业信息不完整'
  85. END as major_integrity,
  86. CASE
  87. WHEN class_code IS NOT NULL AND class_name IS NOT NULL THEN '班级信息完整'
  88. ELSE '班级信息不完整'
  89. END as class_integrity
  90. FROM xg_student_info
  91. WHERE student_no = 'TEST004';
  92. -- 8. 清理测试数据
  93. DELETE FROM xg_student_info WHERE student_no = 'TEST004';
  94. -- 9. 验证清理成功
  95. SELECT '验证清理成功...' as message;
  96. SELECT COUNT(*) as remaining_test_records
  97. FROM xg_student_info
  98. WHERE student_no = 'TEST004';
  99. -- 10. 完成测试
  100. SELECT '学院专业班级字段修复验证完成!' as message;
  101. SELECT '前端修复后,学院、专业、班级的代码和名称都应该能正确写入数据库' as result;