-- /gxmu/declare 挑战杯配置多值化迁移 -- 目标: -- 1. 申报管理中的 project_type / project_group 支持保存多个自定义值 -- 2. 存储格式采用 JSON 数组字符串,尽量减少后端实体和前端兼容成本 ALTER TABLE `gxmu_declare` MODIFY COLUMN `project_type` TEXT NULL COMMENT '挑战杯项目类型(JSON数组字符串)', MODIFY COLUMN `project_group` TEXT NULL COMMENT '挑战杯项目分组(JSON数组字符串)'; -- 历史单值数据迁移为 JSON 数组字符串,仅处理挑战杯模块记录 UPDATE `gxmu_declare` SET `project_type` = JSON_ARRAY(`project_type`) WHERE `module` = 'gxmu_tzbcy_form' AND `project_type` IS NOT NULL AND `project_type` <> '' AND JSON_VALID(`project_type`) = 0; UPDATE `gxmu_declare` SET `project_group` = JSON_ARRAY(`project_group`) WHERE `module` = 'gxmu_tzbcy_form' AND `project_group` IS NOT NULL AND `project_group` <> '' AND JSON_VALID(`project_group`) = 0; -- 挑战杯申报表 gxmu_tzbcy_form 的 project_type / project_group 仍为单值字段,无需改表。