DiffDogは、主要なリレーショナルデータベースをすべてサポートするデータベース比較ツールです。これにより、同じ種類のデータベース、同等のテーブルの内容、そして異なる種類のデータベースにおけるデータベース全体のスキーマを比較することができます。その後、データベースをどちらの方向でもマージすることが可能です。
DiffDogは、データベースの比較結果を、直感的に理解しやすいグラフィカルな表形式で表示します。また、テーブル間のカラムのマッピングを視覚的に示すために、接続線を使用しています。
DiffDogは、異なるデータベースの種類を比較する際に、データ型の命名に関する不整合も解決します。例えば、SQL Serverデータベースの顧客テーブルとバックアップコピーを比較したり、MySQLの任意のテーブルの内容、またはIBM DB2 9データベースとOracle 11g環境の間で、データベース全体のスキーマを比較したりすることができます。
自動テーブルマッピング機能を使用すると、DiffDogに、列名、データ型、または列の位置に基づいて列を関連付けるように指示できます。もし自動マッピングの結果が不正確であったり、情報が不足している場合は、テーブルの列間で接続線を引き、手動で比較対象を特定することも可能です。
各テーブルの比較結果について、詳細な結果ウィンドウを開くことができます。また、表示/非表示の設定を調整することで、一致する行、不一致の行、または右側または左側のテーブルにのみデータが含まれる行を、ご希望に応じて表示または非表示にすることができます。
テーブルの内容に差異がある場合、個々のセルを更新するか、テーブル全体を更新することで、どちらの方向でも簡単に差分を統合できます。
データベーススキーマの差分比較機能を使用すると、データベースの構造を比較し、視覚的に差異を特定し、それらを統合することができます。例えば、開発者のバージョンと本番環境のデータベースのバージョンなど、同じ種類のデータベースを比較したり、異なる種類のデータベースのスキーマを比較したりすることができます。
個別のテーブル、テーブルのグループ、またはデータベース全体のスキーマを比較することができます。選択した内容は、DiffDogのスキーマ比較ウィンドウに表示されます。テーブルを接続して比較を開始すると、DiffDogは自動的にテーブル内の対応する要素を関連付けます。また、一致しない要素を手動で関連付けたり、自動的に関連付けられたものを解除して、別の方法で関連付けたりすることも可能です。
ツールバーにある「比較」ボタンをクリックすると、DiffDogは比較ウィンドウを更新し、データベースのスキーマ間の差異を色やアイコンで示します。
ツールバーにある「左側マージ」または「右側マージ」ボタンをクリックすることで、変更点を統合できます。右クリックのコンテキストメニューには、より詳細なマージオプションが用意されており、選択したテーブルの内容をすぐに比較するための機能も含まれています。
どのマージオプションを選択しても、DiffDogは常にSQL変更スクリプトを作成し、お客様が内容を確認できるようにします。SQL変更スクリプトの処理方法にはいくつかの選択肢があります。スクリプトをファイルに保存したり、DatabaseSpyのSQLエディタウィンドウにスクリプトを送信したり、DiffDogから直接SQL変更スクリプトを実行したり、マージリクエストをキャンセルしてスクリプトを破棄したりすることができます。
リレーショナルデータベースのベンダーによって、SQLの方言やデータ型が異なる場合があります。DiffDogは、これらの差異を考慮し、ソースデータベースの種類が異なっていても、ターゲットデータベースの構文に適合する変更スクリプトを生成します。

