【问题标题】:Mysql and flyway command line afterMigrate.sql with multiple files带有多个文件的 Mysql 和 flyway 命令行 afterMigrate.sql
【发布时间】:2015-03-14 17:04:01
【问题描述】:

我正在使用 MySQL 数据库并使用 flyway 命令行工具 (http://flywaydb.org/)。理想情况下,我希望看到架构迁移更改和存储的过程/函数之间的分离,即

src/db/V01__init.sql
src/db/procs/01_util.sql
src/db/procs/02_time.sql
...

我找到了 afterMigrate.sql 文件,该文件在从命令行完成迁移命令时触发。但是看不到我将如何包含我拥有的所有 2 个存储的 proc 文件。

我尝试将其放入 afterMigrate.sql

SOURCE 'procs/01_util.sql';
SOURCE 'procs/02_time.sql';

但似乎会导致 SQL 语法错误。

有什么方法可以将存储的 proc 文件包含在 afterMigrate 文件中,而不是将其全部定义在一个文件中?

【问题讨论】:

    标签: mysql flyway


    【解决方案1】:

    简短回答:不,在 3.X 中,您必须将它们放入一个文件中或在 Java 中实现您自己的回调。

    对于 4.0,我们将引入对这些类型的可重复脚本的一流支持,这将使这变得更加容易。

    【讨论】:

    • 好的,期待4.0。现在我粗略地修改了flyway脚本文件,使用 cat procs/*.sql > afterMigrate.sql 将proc文件夹下所有文件的内容附加到 afterMigrate.sql 文件现在可以正常工作
    猜你喜欢
    • 2018-09-21
    • 1970-01-01
    • 2017-06-16
    • 2013-08-14
    • 2020-09-23
    • 2012-06-06
    • 2013-06-08
    • 1970-01-01
    • 2013-09-14
    相关资源
    最近更新 更多