[注: SSIS などを使用できないため、コードにする必要があります]
おそらく C# と EF を使用して、あるデータベースから別のデータベースにデータを一括コピーする必要がありますが、これは確実ではありません。
問題は、ソース データがすべて varchar(max) にあり、宛先を正しいデータ型にしたいことです。ソースは、非常にうまく機能する古い ETL ジョブの履歴であり、交換することはできません。私が見た最も一般的な問題は、数値フィールドのアルファです。たとえば、金額フィールドの「なし」です。これらはすべて varchar であるため、ソースでは問題ありません。
データをコピーして検証したいと思います:
ソース -> 検証 ->
可能な限り簡単な方法で宛先。検証が失敗した場合、ソースで手動で修正し、データを再コピーできるように、失敗した正確な行 (理想的には何が失敗したか) を知る必要があります。
10 ~ 170 万行のテーブルが約 50 あります。そのため、スピードも重要です。
これにアプローチする賢明な方法は何でしょうか?DTO、検証属性、オートマップを作成しますか? 2 つの EF エンティティと行ごとにマップし、それぞれを検証しますか? SPROCと手動挿入?