FlyWay版本

时间:2017-09-18 14:57:05

标签: java flyway

我对版本化迁移有疑问

我想用这样的模板创建文件

V201709181750__Create_users.sql - 这是一个你可以用的长号吗?

另一个问题 FlyWay推出了这样的脚本

  • V20170918的 1500 __ Create_users_1.sql
  • V20170918的 1800 __ Create_users_2.sql

然后我提交文件 V20170918 1600 __ Create_users_3.sql

当文件到达中间时,并且不会成为最新版本。 FlyWay在这种情况下会如何表现?

1 个答案:

答案 0 :(得分:1)

每次迁移的版本号都存储在 SCHEMA_VERSION 表的数据库中。声明字段VERSION的长度为50.(SqlServer中的nvarchar(50))。 我假设50个符号是版本字符串的限制。

顺便说一句,我尝试了1.11.201709181750201709181750201709181750.020作为版本,它运行良好。

第二个问题: 默认情况下,如果Flyway发现包含以下消息的无序迁移,则无法应用迁移: 验证失败:检测到已解决的迁移未应用于数据库

但是可以通过覆盖"outOfOrder"配置标志来更改此行为。查看命令行运行程序的详细信息:

  

https://flywaydb.org/documentation/commandline/migrate