スキーマの比較と移行
Database Tools and SQL プラグインの有効化
この機能は、PhpStorm にデフォルトでバンドルされ有効になっている Database Tools and SQL プラグインに依存しています。 関連機能が利用できない場合は、プラグインを無効化していないことを確認してください。
Ctrl+Alt+S を押して設定を開き、 を選択します。
Database Tools and SQL プラグインを見つけて、 許可 をクリックします。
PhpStorm では、同じ型の 2 つのデータベースオブジェクトを比較できます。 例: 2 つのスキーマ、2 つのテーブル、または 2 つのルーチンを比較できます。 オブジェクトを含むデータベースは、別のサーバーでホストできます。 PhpStorm は、 マイグレーション ダイアログでこれら 2 つのオブジェクトの構造の違いを示します。
移行は、構造と変更をあるオブジェクトから別のオブジェクトに (たとえば、あるスキーマから別のスキーマに) 移行するプロセスです。 PhpStorm では、これらのオブジェクトは オリジン および Target と呼ばれます。 移行スクリプトは、 Target を オリジン と等しくするように生成されます。 ただし、要件を満たすようにスクリプトを変更できます。

変更のために、IntelliJ IDEA は次の色分けを使用します。
色 | 説明 |
|---|---|
| 移行が成功した場合に Target に作成される、 オリジン に追加されたオブジェクト。 |
| Target で変更される、変更済みオブジェクト。 |
| 移行が成功した場合に Target でドロップされる、 オリジン で削除されたオブジェクト。 |
参照 セクションのダイアログコントロールの説明を参照してください。
スキーマの比較
オブジェクト間の違いを表示
データベース ツールウィンドウで、同じ型の 2 つのオブジェクトを選択します。 例: 2 つのスキーマ。
または、 Ctrl+D を押します。 または、 Ctrl+D を押します。

表形式で変更間の違いを表示する
マイグレーション ダイアログで、 オリジン または Target フィールドの項目をクリックします。
オブジェクトプロパティの差分 タブをクリックします。
DDL の変更間の違いを表示する
マイグレーション ダイアログで、 オリジン または Target フィールドの項目をクリックします。
DDL の差分 タブをクリックします。

同一のアイテムを表示する
オリジン オブジェクトと Target オブジェクトで同一のすべてのアイテムを表示するには、 同一のオブジェクトを表示 チェックボックスを選択します。


スキーマの移行
オブジェクト間の変更を移行する
データベース ツールウィンドウで、同じ型の 2 つのオブジェクトを選択します。 例: 2 つのスキーマ。
または、 Ctrl+D を押します。 または、 Ctrl+D を押します。
移行スクリプトの作成に使用できる一連のステートメントは、 スクリプトのプレビュー タブで生成されます。
スクリプトのプレビュー タブで、移行スクリプトが正しいことを確認します。
実行 をクリックします。 または、 クエリをコンソールで開く をクリックして、クエリコンソールですべてのスクリプトを開きます。
移行する変更を選択する
変更を除外するには、変更を適切にチェックボックスをクリックします。
すべての変更を除外するには、 Target ラベルの近くにあるチェックボックスをクリックします。
除外されたすべての変更を含めるには、 Target ラベルの近くにあるチェックボックスをクリックします。
移行の制御ダイアログ
アイコン | ツールチップとショートカット | 説明 |
|---|---|---|
Expand All | 折りたたまれたすべてのノードを展開します。 | |
Collapse All | 展開されたすべてのノードを折りたたみます。 | |
Swap | オリジン パネルと Target パネルを交換します。 | |
Options |
| |
変更を含める | 選択した変更を適用します。 | |
同一のオブジェクトを表示 | 同一のアイテムをすべて表示します。 |
DDL 差分の制御
項目 | ツールチップとショートカット | 説明 |
|---|---|---|
| 前の差分/次の差分 Shift+F7/F7 | 次または前の違いに移動します。 |
ソースに移動 F4 | 選択したオブジェクトの定義をエディターのアクティブペインで開きます。 キャレットは 差分ビューアー と同じ位置に配置されます。 | |
横並びビューアー | ビューアーモードを選択します: 横並びビューアー または 統合ビューアー。 横並びモードには 2 つのパネルがあり、ユニファイドモードには 1 つのパネルがあります。 | |
空白 | 差分ビューアーが空白をどのように扱うかを定義します。
| |
ハイライトモード | 違いをハイライトする方法を選択します。 利用可能なオプションは以下のとおりです。
| |
Synchronize Scrolling | 左右のペインのスクロールを同期します。 | |
設定 | 比較中に無視するオプションを選択します。
| |
ヘルプ F1 | ブラウザーを開き、対応するヘルプページを表示します。 |