方法 : データベース スキーマを比較する
Visual Studio Team System Database Edition を使用すると、2 つのデータベース スキーマを比較できます。 これらのスキーマは、データベース、データベース プロジェクト、またはデータベース プロジェクトのビルド出力で表されることがあります (.dbschema ファイル)。 比較するエンティティは、ソースおよびターゲットと呼ばれます。 スキーマの比較が終了すると、[スキーマ比較] ウィンドウに結果が表示されます。 また、異なるスキーマの同期に使用できるデータ定義言語 (DDL: Data Definition Language) スクリプトも、Database Edition によって生成されます。
データベース プロジェクトをターゲット データベースと定期的に比較する場合は、データベース プロジェクトにスキーマ比較を追加できます。 これにより、そのスキーマ比較を再び開いてスキーマを再比較できます。 スキーマ比較を保存することで、接続情報、セッション別のオプション、SQLCMD 変数の値が保存されます。 結果は保存されません。保存したスキーマ比較の .scmp ファイルを開くと、結果が再生成されます。
比較が終了すると、次のように他の手順を実行できます。
2 つのデータベース間の構造的な相違点を確認できます。 詳細については、「方法 : スキーマの相違点を表示する」を参照してください。
ターゲットの一部またはすべてを、ソースと一致するように更新することができます。 詳細については、「方法 : データベース オブジェクトまたはサーバー オブジェクトを同期する」を参照してください。
ターゲットおよびソースに常駐するデータを比較することができます。 詳細については、「方法 : 2 つのデータベースのデータを比較する」を参照してください。
スキーマ比較シナリオの詳細については、「データベース スキーマを比較および同期する」を参照してください。
2 つのスキーマを比較するには
2 つのスキーマを比較し、設定をデータベース プロジェクトの一部として保存しない場合は、次の手順を実行します。
[データ] メニューの [スキーマ比較] をポイントし、[新しいスキーマ比較] をクリックします。
手順 3. に進みます。
2 つのスキーマを比較し、設定をデータベース プロジェクトの一部として保存する場合は、次の手順を実行します。
ソリューション エクスプローラで、[スキーマ比較] フォルダを右クリックし、[追加] をポイントし、[スキーマ比較] をクリックします。
[新しい項目の追加] ダイアログ ボックスが表示されます。
[名前] に、スキーマ比較に割り当てる名前を入力し、[追加] をクリックします。
比較するソースおよびターゲットを指定するには、それぞれのスキーマに対して [プロジェクト]、[データベース]、または [データベース スキーマ ファイル] をクリックします。
メモ : ターゲット スキーマのデータベース スキーマ ファイルを指定できますが、そのファイルは更新できません。
ソースまたはターゲットについて [データベース] をクリックした場合は、一覧でそのデータベースをクリックするとデータ ソースに接続します。
一覧にどのデータベースも表示されない場合は、[新しい接続] をクリックします。 [接続のプロパティ] ダイアログ ボックスで、ソースまたはターゲットが常駐するサーバーの名前、および接続するときに使用する認証の種類を指定します。 オプションで、そのサーバー上のデータベースをクリックします。 作業が終了したら、[OK] をクリックします。
メモ : 接続が確立されると、サーバー エクスプローラの [データ接続] の下にその接続が表示されます。
ソースまたはターゲットに対して [データベース スキーマ ファイル] をクリックした場合は、パスとファイル名を入力するか、[参照] をクリックしてファイルを指定します。
(省略可能) [オプション] をクリックし、比較するオブジェクト、無視する相違点の種類、および生成される更新スクリプトに含める内容を指定します。
(省略可能) [SQLCMD 変数] をクリックし、変数とその値の一覧を含む .sqlcmdvars ファイルを指定します。
スキーマの比較時には、対応するデータベース プロジェクトの値に置き換えられます。
[OK] をクリックします。
スキーマ比較が開始されます。
メモ : 進行中の比較を停止するには、ツール バーの [停止] をクリックします。
スキーマ比較を最初に保存するには
[ファイル] メニューの [SchemaComparisonName.scmp の保存] をクリックします。
[名前を付けてファイルを保存] ダイアログ ボックスが表示されます。
スキーマ比較のパスとファイル名を指定します。
スキーマ比較がデータベース プロジェクトの一部である場合は、プロジェクトの SchemaComparisons フォルダに保存されます。
[保存] をクリックします。
指定した場所にスキーマ比較が保存されます。
参照
処理手順
方法 : データベース オブジェクトまたはサーバー オブジェクトを同期する