目次

LiquiBase for IntelliJ IDEA

LiquiBase IntelliJ プラグインを利用することで、ソースコードをリファクタリングするのと同じぐらい簡単に見た目にもわかりやすくデータベースをリファクタリングできます。

LiquiBase プラグインは、DBHelper の上で構築されており、”Refactor” を追加し、”LiquiBase” コンテキストメニューをデータベースエクスプローラーに追加します。

デモ

LiquiBase IntelliJ プラグインに関する 2つのデモンストレーションビデオが training ページから利用可能です。

Refactor メニュー

“refactor” メニューから、LiquiBase が対応するすべてのリファクタリングが表示されます。選択したデータベースオブジェクトの種類に応じてリファクタリングが有効になります。リファクタリングを選択すると、ウィザードが開始され、リファクタリングに関する情報を設定でき、”id” や “authour” といった変更セットに特有の情報を含むことができます。設定可能な情報については、changeSet マニュアルページ まで。

対応しているリファクタリング

対応していないリファクタリング

下記のリファクタリングは、IntelliJ プラグインで自動的に作成されませんが、変更ログファイルに追加することで、プラグインを通じて自動的に実行できます。

LiquiBase メニュー

“LiquiBase” メニューは、IntelliJ プラグインが対応している、リファクタリング以外のコマンドも表示されます。

現在対応しているコマンド

Change Log Status 実行されていない変更ログを表示
Clear Checksums LiquiBase がデータベースに対してなされたそれぞれの変更のチェックサムを記録しています。このコマンドでこの記録を消去
Create Empty Change Log 空の変更ログ XML ファイルを生成
Drop All Objects 接続されたユーザーが所有するすべてのデータベースオブジェクトを削除
Generate Complete Change Log 選択されたデータベースを作成するための変更ログの生成
Generate DbDoc DbDoc ドキュメンテーションの生成
Generate Migration SQL データベースを更新するのに必要な SQL の生成
Generate SQL to Roll Back Unrun Changes 実行後に、それを実行しなかった状況にまで戻す SQL を生成
List LiquiBase Locks LiquiBase は、複数のインスタンスからの更新の排他制御にロックを使用しています。このコマンドでそれらのロックを表示
Release LiquiBase Locks LiquiBase のロックを解放
Rollback Changes 指定した数ぶんの変更をロールバック
Rollback Changes (Generate SQL) 指定した数ぶんの変更をロールバックする SQL の生成
Rollback to Date 指定された日付までデータベースをロールバック
Rollback to Date (Generate SQL) 指定された日付までデータベースをロールバックする SQL を生成
Rollback to Tag 指定されたタグまでデータベースをロールバック
Rollback to Tag (Generate SQL) 指定されたタグまでデータベースをロールバックする SQL を生成
Tag Database 将来のロールバックに備えて現在のデータベース状況をタグ付け
Update Database まだ実行されていない変更をすべて適用
Validate Change Log 変更ログのエラーを確認

追加の情報

LiquiBase に関して追加の情報が必要でしたら、LiquiBase ドキュメンテーション まで。クイックスタートマニュアルが参照できます。

疑問や問題は直接 メーリングリストまで。