20-fix-student-fields-mapping.sql 6.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596
  1. -- 学生信息字段映射修复脚本
  2. -- 确保所有字段都正确存在并具有正确的属性
  3. USE hzdyjs_xg;
  4. -- 检查并添加缺失的字段
  5. -- 1. 宿舍信息字段
  6. ALTER TABLE xg_student_info ADD COLUMN IF NOT EXISTS dormitory_building VARCHAR(50) COMMENT '宿舍楼栋';
  7. ALTER TABLE xg_student_info ADD COLUMN IF NOT EXISTS dormitory_room VARCHAR(20) COMMENT '宿舍房间号';
  8. -- 2. 健康信息字段
  9. ALTER TABLE xg_student_info ADD COLUMN IF NOT EXISTS allergies TEXT COMMENT '过敏史';
  10. ALTER TABLE xg_student_info ADD COLUMN IF NOT EXISTS medical_history TEXT COMMENT '病史';
  11. ALTER TABLE xg_student_info ADD COLUMN IF NOT EXISTS health_status VARCHAR(20) DEFAULT '良好' COMMENT '健康状况';
  12. ALTER TABLE xg_student_info ADD COLUMN IF NOT EXISTS blood_type VARCHAR(10) COMMENT '血型';
  13. -- 3. 银行信息字段
  14. ALTER TABLE xg_student_info ADD COLUMN IF NOT EXISTS bank_branch VARCHAR(100) COMMENT '开户支行';
  15. ALTER TABLE xg_student_info ADD COLUMN IF NOT EXISTS card_holder_name VARCHAR(50) COMMENT '持卡人姓名';
  16. ALTER TABLE xg_student_info ADD COLUMN IF NOT EXISTS bank_card_no VARCHAR(30) COMMENT '银行卡号';
  17. ALTER TABLE xg_student_info ADD COLUMN IF NOT EXISTS bank_name VARCHAR(50) COMMENT '开户银行';
  18. ALTER TABLE xg_student_info ADD COLUMN IF NOT EXISTS bank_city VARCHAR(50) COMMENT '开户城市';
  19. ALTER TABLE xg_student_info ADD COLUMN IF NOT EXISTS bank_province VARCHAR(50) COMMENT '开户省份';
  20. ALTER TABLE xg_student_info ADD COLUMN IF NOT EXISTS card_type VARCHAR(20) DEFAULT '储蓄卡' COMMENT '卡片类型';
  21. ALTER TABLE xg_student_info ADD COLUMN IF NOT EXISTS card_status VARCHAR(20) DEFAULT '正常' COMMENT '卡片状态';
  22. ALTER TABLE xg_student_info ADD COLUMN IF NOT EXISTS bank_card_remark TEXT COMMENT '银行卡备注';
  23. -- 4. 紧急联系人信息字段
  24. ALTER TABLE xg_student_info ADD COLUMN IF NOT EXISTS emergency_contact_name VARCHAR(50) COMMENT '紧急联系人姓名';
  25. ALTER TABLE xg_student_info ADD COLUMN IF NOT EXISTS emergency_contact_phone VARCHAR(20) COMMENT '紧急联系人电话';
  26. ALTER TABLE xg_student_info ADD COLUMN IF NOT EXISTS emergency_contact_relation VARCHAR(20) COMMENT '紧急联系人关系';
  27. -- 5. 家庭信息字段
  28. ALTER TABLE xg_student_info ADD COLUMN IF NOT EXISTS father_name VARCHAR(50) COMMENT '父亲姓名';
  29. ALTER TABLE xg_student_info ADD COLUMN IF NOT EXISTS father_phone VARCHAR(20) COMMENT '父亲电话';
  30. ALTER TABLE xg_student_info ADD COLUMN IF NOT EXISTS father_work_unit VARCHAR(100) COMMENT '父亲工作单位';
  31. ALTER TABLE xg_student_info ADD COLUMN IF NOT EXISTS mother_name VARCHAR(50) COMMENT '母亲姓名';
  32. ALTER TABLE xg_student_info ADD COLUMN IF NOT EXISTS mother_phone VARCHAR(20) COMMENT '母亲电话';
  33. ALTER TABLE xg_student_info ADD COLUMN IF NOT EXISTS mother_work_unit VARCHAR(100) COMMENT '母亲工作单位';
  34. ALTER TABLE xg_student_info ADD COLUMN IF NOT EXISTS family_income VARCHAR(20) COMMENT '家庭年收入';
  35. ALTER TABLE xg_student_info ADD COLUMN IF NOT EXISTS family_members INT COMMENT '家庭成员数量';
  36. ALTER TABLE xg_student_info ADD COLUMN IF NOT EXISTS family_economic_status VARCHAR(20) COMMENT '家庭经济状况';
  37. -- 6. 监护人信息字段
  38. ALTER TABLE xg_student_info ADD COLUMN IF NOT EXISTS guardian_name VARCHAR(50) COMMENT '监护人姓名';
  39. ALTER TABLE xg_student_info ADD COLUMN IF NOT EXISTS guardian_phone VARCHAR(20) COMMENT '监护人电话';
  40. ALTER TABLE xg_student_info ADD COLUMN IF NOT EXISTS guardian_relation VARCHAR(20) COMMENT '监护人关系';
  41. -- 7. 体征信息字段
  42. ALTER TABLE xg_student_info ADD COLUMN IF NOT EXISTS height DECIMAL(5,2) COMMENT '身高(cm)';
  43. ALTER TABLE xg_student_info ADD COLUMN IF NOT EXISTS weight DECIMAL(5,2) COMMENT '体重(kg)';
  44. -- 8. 特殊情况字段
  45. ALTER TABLE xg_student_info ADD COLUMN IF NOT EXISTS is_poor_student TINYINT(1) DEFAULT 0 COMMENT '是否贫困生:0-否,1-是';
  46. ALTER TABLE xg_student_info ADD COLUMN IF NOT EXISTS is_minority TINYINT(1) DEFAULT 0 COMMENT '是否少数民族:0-否,1-是';
  47. ALTER TABLE xg_student_info ADD COLUMN IF NOT EXISTS is_disabled TINYINT(1) DEFAULT 0 COMMENT '是否残疾学生:0-否,1-是';
  48. ALTER TABLE xg_student_info ADD COLUMN IF NOT EXISTS is_orphan TINYINT(1) DEFAULT 0 COMMENT '是否孤儿:0-否,1-是';
  49. ALTER TABLE xg_student_info ADD COLUMN IF NOT EXISTS is_left_behind_child TINYINT(1) DEFAULT 0 COMMENT '是否留守儿童:0-否,1-是';
  50. ALTER TABLE xg_student_info ADD COLUMN IF NOT EXISTS is_single_child TINYINT(1) DEFAULT 0 COMMENT '是否独生子女:0-否,1-是';
  51. -- 9. 扩展信息字段
  52. ALTER TABLE xg_student_info ADD COLUMN IF NOT EXISTS specialties TEXT COMMENT '特长爱好';
  53. ALTER TABLE xg_student_info ADD COLUMN IF NOT EXISTS awards TEXT COMMENT '获奖情况';
  54. ALTER TABLE xg_student_info ADD COLUMN IF NOT EXISTS violations TEXT COMMENT '违纪记录';
  55. ALTER TABLE xg_student_info ADD COLUMN IF NOT EXISTS social_activities TEXT COMMENT '社会活动';
  56. -- 10. 其他扩展字段
  57. ALTER TABLE xg_student_info ADD COLUMN IF NOT EXISTS disability_type VARCHAR(50) COMMENT '残疾类型';
  58. ALTER TABLE xg_student_info ADD COLUMN IF NOT EXISTS disability_level VARCHAR(20) COMMENT '残疾等级';
  59. ALTER TABLE xg_student_info ADD COLUMN IF NOT EXISTS info_status TINYINT(1) DEFAULT 1 COMMENT '信息状态:1-正常,2-待审核,3-审核中,4-已驳回,5-已锁定';
  60. ALTER TABLE xg_student_info ADD COLUMN IF NOT EXISTS approval_status TINYINT(1) DEFAULT 1 COMMENT '审批状态:1-待审批,2-审批中,3-已通过,4-已驳回';
  61. ALTER TABLE xg_student_info ADD COLUMN IF NOT EXISTS audit_time DATETIME COMMENT '审核时间';
  62. ALTER TABLE xg_student_info ADD COLUMN IF NOT EXISTS audit_by BIGINT(20) COMMENT '审核人员ID';
  63. ALTER TABLE xg_student_info ADD COLUMN IF NOT EXISTS audit_remark TEXT COMMENT '审核备注';
  64. -- 验证字段是否正确添加
  65. SELECT
  66. COLUMN_NAME as '字段名',
  67. DATA_TYPE as '数据类型',
  68. IS_NULLABLE as '可空',
  69. COLUMN_DEFAULT as '默认值',
  70. COLUMN_COMMENT as '注释'
  71. FROM INFORMATION_SCHEMA.COLUMNS
  72. WHERE TABLE_SCHEMA = 'hzdyjs_xg'
  73. AND TABLE_NAME = 'xg_student_info'
  74. AND COLUMN_NAME IN (
  75. 'dormitory_building', 'dormitory_room', 'allergies', 'medical_history',
  76. 'bank_branch', 'card_holder_name', 'emergency_contact_name',
  77. 'father_name', 'mother_name', 'family_income', 'family_members',
  78. 'height', 'weight', 'specialties', 'awards', 'violations', 'social_activities'
  79. )
  80. ORDER BY COLUMN_NAME;
  81. -- 输出执行结果
  82. SELECT '字段映射修复脚本执行完成' as '执行结果';
  83. SELECT CONCAT('执行时间: ', NOW()) as '时间戳';