方法 : 2 つのデータベースのデータを比較する
Visual Studio Team System Database Edition を使用すると、2 つのデータベースに格納されているデータを比較できます。 比較するデータベースは、ソースおよびターゲットと呼ばれます。
メモ : |
---|
データベース プロジェクトには、データが格納されていません。 このため、データベース プロジェクトは、データ比較のソースにもターゲットにも指定できません。 |
データを比較すると、データ操作言語 (DML: Data Manipulation Language) スクリプトが生成されます。ターゲット データベースの一部またはすべてのデータを更新し、生成されたスクリプトを使用して内容が異なるデータベースを同期化することができます。 データの比較が終了すると、Visual Studio の [データ比較] ウィンドウに結果が表示されます。 詳細については、「1 つ以上のテーブル内のデータと参照データベース内のデータを比較および同期する」を参照してください。
メモ : |
---|
2 つのデータベース、または同じデータベースの 2 つのバージョンのスキーマを比較することもできます。 詳細については、「方法 : データベース スキーマを比較する」を参照してください。 |
データベース データの比較
2 つのデータベースのデータを比較するには
[データ] メニューの [データ比較] をポイントし、[新しいデータの比較] をクリックします。
新しいデータの比較ウィザードが表示されます。 また、[データ比較] ウィンドウが開き、"DataCompare1" などの名前が Visual Studio によって自動的に割り当てられます。
ソース データベースとターゲット データベースを特定します。
[ソース データベース] ボックスの一覧または [ターゲット データベース] ボックスの一覧が空の場合、[新しい接続] をクリックします。 [接続のプロパティ] ダイアログ ボックスで、データベースが常駐するサーバーの名前、およびデータベースに接続するときに使用する認証の種類を指定します。 [OK] をクリックして [接続のプロパティ] ダイアログ ボックスを閉じ、データ比較ウィザードに戻ります。
データ比較ウィザードの 1 ページ目で、各データベースの情報が正しいことを確認し、結果に含めるレコードを指定して、[次へ] をクリックします。 データ比較ウィザードの 2 ページ目が表示され、データベースのテーブルおよびビューが階層表示されます。
メモ : テーブルとビューが一覧に表示されるには、2 つの基準を満たす必要があります。 まず、ソース データベースとターゲット データベース間でオブジェクトのスキーマが一致することが必要です。 次に、主キーまたは一意キーを持つテーブルとビューだけが一覧に表示されます。 これらの 2 つの基準を満たすテーブルとビューが存在しない場合、一覧は空になります。
比較するテーブルおよびビューのチェック ボックスをオンにします。 オプションで、データベース オブジェクトのノードを展開し、そのオブジェクト内の比較する列のチェック ボックスをオンにします。
メモ : 比較するテーブルまたはビューにはそれぞれ、対応する主キー、対応するインデックス、または一意のキーが定義されている必要があります。 それ以外の場合、そのテーブルは比較されるテーブル一覧から削除されます。
一部のオブジェクトでは、[比較キー] 列にデータ比較の基になるキーを指定することができます。 たとえば、主キー列と一意で特定可能な別のキー列のいずれを比較の基にするかを指定することができます。
[完了] をクリックします。
比較が開始されます。
メモ : 進行中のデータ比較操作を停止するには、[データ] メニューの [データ比較] をポイントし、[データ比較の停止].をクリックします。
比較が終わると、2 つのデータベース間のデータの相違点が表示できます。 ターゲット データベースのデータの一部またはすべてを、ソース データベースのデータと一致するように更新することもできます。 詳細については、「方法 : データの相違点を表示する」および「方法 : データベースのデータを同期する」を参照してください。