Flyway:包含外部脚本



有一个maven flyway配置,它指向一个包含所有迁移脚本的通用文件夹。脚本具有常见的模式,如";V1.2.3.4__说明";。此外,在同一迁移文件夹中还有其他具有任意名称的.sql脚本。是否可以从常规的flyway迁移脚本内部调用/包含外部脚本(在同一文件夹中(?

没有办法从迁移中调用外部SQL脚本,但您可以使用占位符将外部SQL插入到迁移中。这些允许您使用${ ... }插入可配置的值。

例如,您的迁移脚本可能看起来像:

SOME SQL...
${external_sql}
SOME MORE SQL...

然后,您可以在flyway.conf:中配置外部SQL

flyway.placeholders.external_sql=SOME EXTERNAL SQL...;

或者,如果需要从文件加载外部SQL,可以在命令行中配置占位符,并将其值设置为外部.sql文件的内容。例如:

./flyway migrate "-placeholders.external_sql=$(cat ./sql/some_external_sql.sql)"

最新更新