Ian*_*ako 7 sql database-migration flyway
即使校验和相同,是否也可以在 Flyway 中执行可重复的迁移?我面临的问题是有一个视图用额外的行扩展了另一个表,并且该视图不会自动更新。
这里有一个例子:
R__person_view.sql
CREATE OR REPLACE VIEW person_view AS
SELECT p.*, e.name FROM person p, entity e
WHERE /* not relevant here ... */;
Run Code Online (Sandbox Code Playgroud)
如果首先执行此迁移,它将正常工作。如果我添加另一个迁移,在其中修改表person,则不会调整更改,因为视图迁移校验和没有更改。
Dav*_*son 14
是的,从 Flyway 6.3.0 开始,可以使用注释中的时间戳占位符每次运行可重复的迁移,确保 Flyway 每次都将其视为重新更改。例如:
R__UtilityProcedures.sql
-- ${flyway:timestamp}
create or replace procedure my_important_proc
Run Code Online (Sandbox Code Playgroud)