Flyway 总是执行可重复的迁移
Flyway always execute repeatable migrations
即使校验和相同,是否可以在 flyway 中执行 repeatable 迁移?我面临的问题是有一个视图用额外的行扩展了另一个 table,并且该视图不会自动更新。
这里有一个例子:
R__person_view.sql
CREATE OR REPLACE VIEW person_view AS
SELECT p.*, e.name FROM person p, entity e
WHERE /* not relevant here ... */;
如果首先执行此迁移,它将正常工作。如果我添加另一个迁移,我在其中修改了 table person
,则更改不会适配,因为视图迁移校验和没有更改。
是的,从 Flyway 6.3.0 开始,可以在评论中每次 using the timestamp placeholder 进行可重复的迁移 运行,确保 Flyway 每次都将其视为重新更改。例如:
R__UtilityProcedures.sql
-- ${flyway:timestamp}
create or replace procedure my_important_proc
即使校验和相同,是否可以在 flyway 中执行 repeatable 迁移?我面临的问题是有一个视图用额外的行扩展了另一个 table,并且该视图不会自动更新。
这里有一个例子:
R__person_view.sql
CREATE OR REPLACE VIEW person_view AS
SELECT p.*, e.name FROM person p, entity e
WHERE /* not relevant here ... */;
如果首先执行此迁移,它将正常工作。如果我添加另一个迁移,我在其中修改了 table person
,则更改不会适配,因为视图迁移校验和没有更改。
是的,从 Flyway 6.3.0 开始,可以在评论中每次 using the timestamp placeholder 进行可重复的迁移 运行,确保 Flyway 每次都将其视为重新更改。例如:
R__UtilityProcedures.sql
-- ${flyway:timestamp}
create or replace procedure my_important_proc