0

コマンドライン ツールをテストしたところ、データベース スキーマの変更 (DDL スクリプト) を期待どおりに移行できました。しかし、すべてのスクリプトを sql ディレクトリの下に移動する必要がありました。

Flyway を実際のスクリプトが存在するディレクトリ (git または svn リポジトリ) にポイントする方法はありますか? flyway.locations は相対パス専用のようです。

データベース (Oracle) では、schema_version テーブル名と列名はすべて小文字で作成されます。Oracle を使用しているユーザーの大多数は、大文字のオブジェクト名と列名 (Oracle のデフォルト) に慣れています。構成ファイルで、独自のテーブル名を設定するプロパティを見つけました。列名に大文字を使用するようにフライウェイを取得する方法はありますか?

テストの実行後、version_schema に挿入されたデータを確認しました。「スクリプト」列の最初の文字が削除されているように見えることを除いて、すべて見栄えがします。

私のプレフィックスは「db_」です。これが schema_version に表示される内容です。

SQL> schema_version から「スクリプト」を選択します。

脚本


b_1_0__test10.sql

b_1_1__test10.sql

b_1_0_1__test10.sql

データベース/db_2012_11_20__query.sql

<< フライウェイ初期化 >>

4

1 に答える 1

2

ここにはたくさんの質問があります (別々にしておくと簡単です)。私はそれらに答えるために最善を尽くします:

  1. 現在サポートされていません。https://github.com/flyway/flyway/issues/108を参照してください。回避策としてシンボリックリンクを使用できます。

  2. いいえ、列名の構成プロパティはありません。schema_version テーブルは Flyway 専用であり、外部で使用するためのものではありません。

  3. これはバグのように聞こえます。構成 (OS + バージョン、DB + バージョン、Flyway バージョン、構成ファイルの内容) と正確な再現手順を含む問題を提出してください。

于 2012-12-03T07:04:10.057 に答える