ねぎとろごはん

SQL Server関連の事や日々の事

データベースを簡単に比較する方法

はじめに

データ移行等で新旧のデータベースを比較するということがあるかと思います。その時に簡単に比較する方法があることを知りました。環境はSQL Serverです。

必要なもの

SSDTが必要になります。 下記のURLを参考にインストールしましょう。ちなみにここではVisual Studio 2019を使ったやり方を紹介します。

docs.microsoft.com

方法

Visual Studioを起動して、空のソリューションを起動しましょう。そして、 [表示]から[SQL Serverオブジェクトエクスプローラー]を表示させます。

f:id:negitoro_gohan:20191215065050p:plain

[右クリック]で[SQL Serverの追加]を行い、比較元のインスタンスを選択します。

f:id:negitoro_gohan:20191215065238p:plain

インスタンス内の情報が表示されるので[右クリック]して[スキーマの比較]を選択します。

f:id:negitoro_gohan:20191215065948p:plain

[ターゲットの選択]を選択します。

f:id:negitoro_gohan:20191215070337p:plain

比較元のインスタンスを選択します。

f:id:negitoro_gohan:20191215070453p:plain

[比較]をクリックします。

f:id:negitoro_gohan:20191215070623p:plain

データベースの差異が表示されました。(この例ではcolumn1を追加しました。)

f:id:negitoro_gohan:20191215070830p:plain

その他

変更点のスクリプト作成

[スクリプトの作成]を行えば、変更箇所のみ反映するスクリプトも作成してくれます。

f:id:negitoro_gohan:20191215071302p:plain

オプション

オプションで比較方法を変えることもできます。

f:id:negitoro_gohan:20191215071758p:plain

おわりに

この方法知るまではSQL文で差異を抽出していたのですが、この方法使えばあっという間ですですね!