2017-08-14 1 views
4

頻繁に変更されたいくつかのデータベースビューを削除(再作成)するために、私はプロジェクトのために繰り返しの移行を設定しました。 例えば:フライウェイ反復可能な移行の名前を変更することはできますか?

src/main/resources 
    |-db 
    |-R__pets_amphibians_view.sql 
    |-R__pets_birds_view.sql 
    |-R__pets_mammals_view.sql 
    |-R__pets_reptiles_view.sql 
    |-... 
    |-<versioned-migrations> 

さて、私がやりたいことは、さらに2つの特定のビューにR__pets_mammals_view.sqlビューを分割することです:パッケージ構造は次のようになりますR__pets_mammals_dogs_view.sqlおよびR_pets_mammals_rodents_view.sqlである。これにより、元のR_pets_mammals_view.sqlファイルの名前の変更/削除が必要になります。

私が知りたいことは、私のスキーマのバージョン管理(このプロセスでホストされている環境を壊す可能性がある)をせずにこれを行うことができるかどうかです。残念ながら、私はFlywayの文書でこれに対する答えを見つけることができませんでした。

P.S.:バージョン管理された移行の名前を、ローカル環境を超えて展開した名前を変更することはお勧めできません。しかし、繰り返し可能な移行は自由に変更できます(そして最後に実行されるため)、実際にこの状況で「カウントする」かどうかはわかりません。

答えて

4

技術的な観点からは、好きなように反復可能な移行を追加、削除、名前変更することができます。フライウェイは、除去された再現性のある移住では何もしません。これらの移行はschema_versionテーブルにも残ります。したがって、削除されていてもスキーマで実行された繰り返し可能な移行を追跡できます。

例では、R__pets_mammals_view.sqlを削除し、2つのビューを追加すると、「哺乳動物」ビューはスキーマに残り、バージョン管理された移行(または手動)で削除できます。

関連する問題