データ比較に関する問題のトラブルシューティング
2 つのデータベース間でデータを比較するとき、このトピックで説明する問題が発生する場合があります。
比較するテーブルの一覧にテーブルが表示されない
次の条件がすべて満たされたときにだけ、比較可能なテーブルの一覧にテーブルとビューが表示されます。
テーブルには、互換性のあるデータ型が設定された一致する列名が必要です。
テーブル、ビュー、および所有者の名前は、大文字と小文字が区別されます。 スキーマの詳細については、「データベース スキーマの比較と同期」を参照してください。
テーブルは、主キー、一意のインデックス、または一意の制約が同じである必要があります。
ビューは、一意のクラスター化インデックスが同じである必要があります。
テーブルとビューは、名前とスキーマ定義が同じである場合にのみ比較できます。
sql_variant 型の相違
列内の値が同じ場合、データ更新スクリプトを検査して sql_variant 型のメタデータの相違を確認する必要があります。 異なるレコード リストは、これらの型の相違を反映しません。
日本語 Unicode データを比較するとエラーが発生する
SQL Server データベースの照合順序、またはデータベース内のテーブルの列の照合順序を指定できます。 しかし、Japanese_Unicode_Qualifier 照合順序 (Qualifier は、BIN、CS、CI、または CS_AS_KS_WS) のいずれかを使用するデータ比較を試みると、[エラー一覧] ウィンドウにロケールがサポートされていないというエラーが表示されます。 SQL Server はこれらの照合順序をサポートしていますが、.NET Framework ではサポートしていません。
注意
この問題を解決するには、データベースまたは列の照合順序を Japanese_Unicode_Qualifier から Japanese_Qualifier に変更します。Qualifier の値は、どちらの場合も同じです。 データベースの照合順序を変更する方法については、Microsoft Web サイトの「サーバー照合順序の設定と変更」を参照してください。 計算列、インデックス、配分統計情報、CHECK 制約、または FOREIGN KEY 制約によって参照されない列の場合は、テーブル定義を変更して、列の照合順序を変更します。