2013-04-04 100 views
6

應如何使用像Flyway這樣的數據庫遷移工具來管理像存儲過程這樣的程序數據庫代碼?使用Flyway遷移存儲過程

與DDL不同,我不想看到更改存儲在多個數據庫遷移文件中的存儲過程。程序代碼如何在源代碼管理下的單個文件中進行管理,還可以利用像Flyway這樣的工具進行數據庫遷移?

+0

我創建了一個非常類似的[問題](http://stackoverflow.com/questions/25839666/flyway-strategy-for-migrating-frequently-changing-functions-stored-procedures),因爲這是18個月大,自從發佈以來。 – markdsievers 2014-09-16 01:50:38

回答

6

框架中沒有特殊的構造來解決這個問題。主要是因爲我沒有想出一個辦法來讓我高興。

更新:從Flyway 4.0開始,完全支持重複性腳本。見https://flywaydb.org/documentation/migrations#repeatable-migrations

+1

任何接近建議3.0版本的方法?我已經重新提出了這個問題[here。](http://stackoverflow.com/questions/25839666/flyway-strategy-for-migrating-frequently-changing-functions-stored-procedures) – markdsievers 2014-09-16 01:52:11

0

我們做的是:

  1. 有一個完整的CREATE OR REPLACE遷飛腳本存儲過程時,他們改變。
  2. 將每個存儲過程存儲在源代碼管理的獨立區域中,以便跟蹤更改並且可以計算差異。

不是一個很好的解決方案,每次都要記住一個痛點,但它經歷了一些工具的限制。