1

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 でこれらの状況に対処する方法を教えてください。

4

1 に答える 1

1

あなたが求めていることはすべてドキュメントにあります。それらが十分に明確でない場合は、どのように改善できるか教えてください。情報が見つからない場合は、その理由をお知らせください。

シナリオ 1: https://flywaydb.org/documentation/existing

シナリオ 2: https://flywaydb.org/documentation/command/validate

シナリオ 3: https://flywaydb.org/documentation/faq#outside-changes

于 2012-12-05T08:55:53.150 に答える