我使用创建表 DDL 成功运行了 v1 迁移。我将其复制到 v2 文件并运行 - 得到了预期的验证错误消息:
迁移到 1.0.002 版 com.googlecode.flyway.core.exception.FlywayException:在第 1 行执行语句时出错:create table people(id number(10) primary key, name varchar2(301)) 由 java.sql.SQLSyntaxErrorException 引起: ORA-00955: 名称已被 n 个现有对象使用 MigrationException: 迁移到版本 1.0.002 失败!请恢复备份并回滚数据库和代码
我更正了 v2 文件并再次运行 flyway migrate。返回错误信息
当前架构版本:1.0.002 MigrationException:迁移到版本 1.0.002 失败!请恢复备份并回滚数据库和代码
我不是在进行数据库备份的阶段 - 简单地尝试执行固定的 DDL。我目前没有看到缺少 flyway clean 的解决方案。为什么 flyway 不能再次尝试执行 FAILED 版本(如果校验和已更改)?或者不应该有一个飞行回滚命令?
我知道我可以很好地修改代码以使其成为这种方式,但是您有什么理由选择它以这种方式运行吗?