データベースを新しいスキーマに移行していますが、データが正しく移動されたことを確認したいと考えています。
スキーマが同じ場合、従来のデータ比較ツールは2つのデータベースの違いを比較できます。今回のケースでは、テーブルのデザインに変更がありましたが、古いスキーマのすべてのデータは新しいスキーマにあり、少し移動されただけなので、正しいことを確認する必要があります。数千万行あるため、手動で検査することはできません。
このタイプの比較に役立つツールはありますか?
カスタムソリューションの開発を始めるのに役立つライブラリ/フレームワークがない場合はどうなりますか?
必要に応じて、データベース固有のソリューションを使用できます。この場合は、SQL Server 2008です。
私の解決策:VIEW
新しいデータベーステーブルと同じフィールドを持つ古いデータベースに各テーブルのを作成して、2つのデータセットを比較しています。
次に、ここで説明する手法を使用してデータを比較します。SQLServerの2つのテーブルを比較するための最短、最速、最も簡単な方法:UNION!
全体的なテーブル構造は古いデータベースに似ており、フィールドが1つのテーブルから別のテーブルに移動、削除、または追加されているので、この移行で私は幸運です。ドロップして追加した場合、比較するものは何もありません。移動または集計されたフィールドについては、比較のために正しい情報を提供するためにビューで計算を行います。
UNION
比較を示してくれ差がある行のみが、そうとすぐにデータが正確であるように私は、空の結果セットを取得します。