12

如何使用 Flyway 等数据库迁移工具管理存储过程等过程数据库代码?

与 DDL 不同,我不想看到存储在多个数据库迁移文件中的存储过程的更改。如何在源代码控制下在单个文件中管理程序代码,同时利用 Flyway 之类的工具进行数据库迁移?

4

2 回答 2

12

框架中没有特殊的结构来处理这个问题。主要是因为我还没有找到让我满意的方法。

更新:从 Flyway 4.0 开始,现在完全支持可重复的脚本。见https://flywaydb.org/documentation/migrations#repeatable-migrations

于 2013-04-05T13:18:10.627 回答
2

我们所做的是:

  1. 每当存储过程发生变化时,都有一个完整的 CREATE OR REPLACE Flyway 脚本。
  2. 将每个存储过程存储在源代码管理的单独区域中,以便跟踪更改并计算差异。

这不是一个很好的解决方案,而且每次都很难记住,但它超越了该工具的一些限制。

于 2014-01-21T18:30:56.113 回答