新しいプロジェクトを開始しました。新しいアプリケーションを最初から構築しています。チームはまったく新しいスキーマで始まりました。私はデータベース構築プロセスを自動化したいので、オプションを探し始めました。フライウェイは良いと思われる。私はちょっと遊んでいて、ツールのいくつかの制限を見つけました。多分、誰かが助けることができるでしょう。フライウェイOracleデプロイ
私たちは、SQLファイルに対して次のようなディレクトリ構造を持っている: SQL - DDL - DML - PACKAGES
ファイル名がスプリントの数に基づいているように、我々は、アジャイル開発を行っているが。私たちが使用しているファイル命名規則は次のとおりです。 スプリント#_script#_userstory#_description
例えば: S1_01_US123_CreateNewTable.sql S1_02_US123_AddConstraint.sql
次のスプリント:ように S2_01_US456_AddColumn.sql
そして、 ...
私はJDBCパラメータをセットアップして接続することができます。私は基本的なものをテストしました:クリーン、修復、情報、およびテストスクリプトのカップルでマイグレーションし、それは魅力的なように働いていました。私はすべてのスクリプトを展開しようとしたときに問題に遭遇しました。問題は次のようになります。 - 単一のアンダースコアが嫌いでした。 - S1_01_ *で始まるファイル名が好きではありませんでした。ファイル名の残りの部分が異なり、別のフォルダにあります。
私は、次の質問がある:
私は、ファイルの名前を変更することなく、フライウェイを使用して構築することができますか?
- のDDL
- のDML
- パッケージ(私が展開毎回):
は、私はそれがこの順に展開する方法を得ることができます。また、ヘッダファイルとボディファイルが別々になっているので、最初にヘッダを展開してください。
schema_versionテーブルの構造を変更できますか?
私は選択的にクリーンアップできますか?オブジェクトのいくつかをドロップしないようにフラグを立てるようにしますか?
私の主な関心事は、他のものよりも前にDDLを実行していることです。私がそれを達成できれば、私はフライウェイを使い始めることができ、私が行くように学ぶことができます。
ありがとうございます。
Harbinder
ありがとうございます!私はあなたが提案したものを正確にやっています。 – HSingh85
コールバックSQL afterFailiedMigrationなどがありますか? – HSingh85
@ HSingh85失敗した移行についてのみ[コールバック](https://flywaydb.org/documentation/callbacks)はありません。あなたは 'afterMigrate'または' afterEachMigrate'でそれを管理する必要があります。また、それが助けになった場合は、その答えを受け入れてください。 –