fix: 将迁移脚本中的SELECT替换为DO 0以避免Flyway处理结果集问题

This commit is contained in:
mediabot-pt
2026-07-07 00:10:09 +08:00
parent 83441e5a96
commit 64de9a0284

View File

@@ -1,11 +1,11 @@
SET @exist := (SELECT COUNT(*) FROM INFORMATION_SCHEMA.COLUMNS WHERE table_schema = DATABASE() AND table_name = 'risk_rules' AND column_name = 'site_id');
SET @sqlstmt := IF(@exist = 0, 'ALTER TABLE risk_rules ADD COLUMN site_id VARCHAR(255) DEFAULT NULL AFTER site_type', 'SELECT ''Column site_id already exists''');
SET @sqlstmt := IF(@exist = 0, 'ALTER TABLE risk_rules ADD COLUMN site_id VARCHAR(255) DEFAULT NULL AFTER site_type', 'DO 0');
PREPARE stmt FROM @sqlstmt;
EXECUTE stmt;
DEALLOCATE PREPARE stmt;
SET @idx_exist := (SELECT COUNT(*) FROM INFORMATION_SCHEMA.STATISTICS WHERE table_schema = DATABASE() AND table_name = 'risk_rules' AND index_name = 'idx_risk_rules_site_id');
SET @idx_sqlstmt := IF(@idx_exist = 0, 'CREATE INDEX idx_risk_rules_site_id ON risk_rules(site_id)', 'SELECT ''Index idx_risk_rules_site_id already exists''');
SET @idx_sqlstmt := IF(@idx_exist = 0, 'CREATE INDEX idx_risk_rules_site_id ON risk_rules(site_id)', 'DO 0');
PREPARE idx_stmt FROM @idx_sqlstmt;
EXECUTE idx_stmt;
DEALLOCATE PREPARE idx_stmt;