You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Flyway 9.4.0报错:撤销SQL脚本文件名格式不被识别

Flyway撤销脚本命名格式错误排查及解决方法

问题核心

你的撤销脚本命名为U006__DROP_TABLE_LS.sql,执行flyway -validateMigrationNaming=true info时被判定为格式无效,但同格式的V前缀版本脚本无异常。

错误原因及解决步骤

  1. 撤销脚本必须对应已存在的版本脚本
    Flyway要求撤销脚本的版本号必须与某个已存在的V<版本号>__<描述>.sql完全一致。比如你必须先有V006__CREATE_TABLE_LS.sql,才能使用U006__DROP_TABLE_LS.sql作为其撤销脚本。如果没有对应的V版本脚本,Flyway会识别为无效命名。

  2. 社区版不支持撤销功能
    Flyway社区版没有Undo脚本的支持,即使命名完全符合规则,也会被判定为无效格式。如果用的是社区版,要么升级到企业版,要么改用反向的版本脚本(比如写一个V007__DROP_TABLE_LS.sql来实现回滚)。

  3. 命名细节检查
    确认撤销脚本的命名严格符合规则:

    • 前缀必须是U,紧跟版本号(无空格)
    • 版本号与描述之间必须是两个下划线(__),不能是单个或多个
    • 描述部分仅允许字母、数字和下划线,不能包含特殊字符

正确示例

  • 合法的版本脚本:V006__CREATE_TABLE_LS.sql
  • 对应的合法撤销脚本:U006__DROP_TABLE_LS.sql

内容的提问来源于stack exchange,提问作者Saturnian

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.02 03:47:37