Flyway は、移行を行う前にデータベースの検証チェックを行うことができますか?
シナリオ 1
例: 既存の DB で flyway を実行しようとしています。db_users テーブルにはすでに数人のユーザーを挿入しています。
しかし、私のSQLスクリプトには、db_usersテーブルの作成ステートメントと、すでに挿入されているユーザーを含むすべてのユーザーの挿入ステートメントがあります。
テーブルを作成する前に IF NOT_EXISTS チェックを行うことはできますが、各挿入の前にチェックを行うのは困難です。
シナリオ 2
データベース内のスクリプト V1、V2、V3 を移行しました。スクリプト V2 を修正し、いくつかの変更を加えます。Flyway は、次回アプリケーションを起動したときにこの変更を識別します。
シナリオ 3
V2 sql スクリプトに create table ステートメントがあります。しかし、アプリケーションを起動した後、テーブルを手動で削除しました。次回アプリケーションを起動すると、Flyway は DB の変更を認識し、V2 を再度実行しますか?
Flyway でこれらの状況に対処する方法を教えてください。