The DiffDog データベース比較ツールはすべての主要なリレーショナルデータベースをサポートし、同じ種類のデータベース、および異なる種類のデータベース内のデータベース内の同等のテーブルのコンテンツ、および、データベーススキーマ全体の差分を確認することができます。そして、データベースを両方向にマージすることができます。
DiffDog は直感的なテーブルの表示により、線を引くことでテーブル間のカラムマッピングを視覚的に行うことができます。
異なるデータベース型を比較する場合、異なるデータ型の名前付けも DiffDog により解決されます。つまり、SQL Server データベースにある顧客テーブルをバックアップコピーと比較したり、例えば、 MySQL テーブルのコンテンツまたはデータベース スキーマ全体を IBM DB2 9 と Oracle 11g 実装間で比較することができるようになります。
DiffDog の自動テーブルマッピングオプションを使うことで、名前やデータ型、またはカラムの位置といった情報を元にカラムの自動マッピングを行うことができます。自動マッピングの結果が正確でなかったり完全でない場合、テーブルのカラム間で線をドラッグすることで、手動によるマッピングを行うことができます。
各テーブルの比較結果に対して詳細ウィンドウを開くことができるほか、等しい/等しく無い行を表示/隠すフィルタリング、右または左側のテーブルにデータが含まれている行だけを表示することができます。
テーブルコンテンツのマージは個々のセルやテーブル全体を更新することで、どちらの方向にも行うことが簡単にできます。
データベース スキーマの差分により、データベース構造を比較し、視覚的に識別し、差分のマージを行うことができます。例えば、開発者用と製品用で使用されている同じ種類のデータベースを比較することができるほか、異なる種類のデータベースの差分を確認することもできます。
個々のテーブル、テーブルのグループ、またはデータベース スキーマ全体を比較対象として選択することができます。選択された内容は DiffDog のスキーマ比較ウィンドウに表示されます。比較を行うためにテーブル間の接続を行うと、テーブル内にあるマッチする要素が DiffDog により自動的に接続されます。また、一致しなかった要素同士を手動で接続することで、それらの比較を行うことができます。自動的に接続された要素の接続を切断して、異なるマッピングを適用することもできます。
ツールバーにある比較ボタンをクリックすると、DiffDog の比較ウィンドウが更新され、データベース スキーマ間の差分を表す色やアイコンが表示されます。
ツールバーにある右、または左へのマージボタンをクリックすることで差分のマージを行うことができます。右クリックより表示されるコンテキストメニューでは、より包括的なマージ オプションが表示され、選択されたテーブルのデータベースコンテンツ比較をただちに行うことができます。
選択されたマージ オプションに関わりなく、SQL 変更スクリプトが DiffDog により作成され、レビューを行うことができます。SQL 変更スクリプトを処理するには幾つかの方法があり、SQL 変更スクリプトをファイルへ保存、DatabaseSpy の SQL エディターウィンドウへ送信、SQL 変更スクリプトを DiffDog から直接実行、またはマージリクエストをキャンセルして、スクリプトを破棄することができます。
SQL 言語や、データ型は、リレーショナル データベースのベンダーにより異なります。DiffDog では、これらの差異を吸収し、ソースとなるデータベースが別の種類である場合でも、ターゲット データベースの構文に合った形で変更スクリプトを生成します。