问题根因:数据库中 Flyway V7 记录的是 add registration refactoring tables,与代码中的

V7__add_judge_invite_referee_type.sql 不一致,导致 referee_type 字段从未被添加到
martial_judge_invite 表。

   已修复:
   1. 创建了新的迁移脚本 V9__add_judge_invite_referee_type.sql
   2. 手动在数据库中添加了 referee_type 字段
   3. 更新了 Flyway 历史记录
This commit is contained in:
Z-WICK
2026-01-24 21:24:40 +08:00
parent 4d43210d73
commit 0099bebecd
@@ -0,0 +1,20 @@
-- =====================================================
-- Migration: Add referee_type to martial_judge_invite
-- Version: V9
-- Description: Add referee type column (1-Chief Judge, 2-Judge, 3-General Judge)
-- Date: 2026-01-24
-- =====================================================
-- Idempotent: Only add column if not exists
SET @dbname = DATABASE();
SET @tablename = 'martial_judge_invite';
SET @columnname = 'referee_type';
SET @preparedStatement = (SELECT IF(
(SELECT COUNT(*) FROM INFORMATION_SCHEMA.COLUMNS
WHERE TABLE_SCHEMA = @dbname AND TABLE_NAME = @tablename AND COLUMN_NAME = @columnname) > 0,
'SELECT 1',
CONCAT('ALTER TABLE ', @tablename, ' ADD COLUMN ', @columnname, ' INT DEFAULT NULL COMMENT "裁判类型:1-主裁判,2-裁判员,3-总裁"')
));
PREPARE alterIfNotExists FROM @preparedStatement;
EXECUTE alterIfNotExists;
DEALLOCATE PREPARE alterIfNotExists;