问题根因:数据库中 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:
@@ -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;
|
||||
Reference in New Issue
Block a user