TableA のスキーマが TableB とは異なる TableB にない TableA からすべての行を取得する方法 (それらは異なる dbms から来る異なる型指定された DataTable クラスです)?
country
as にcountry_id
ないすべての行が必要Country
ですidCountry
。
src.country
これらは異なるスキーマを持っているため (そしてdest.Country
異なる DataTable-classes であるため) 、これは機能しません。
Dim srcNotInDest = src.country.Except(dest.Country)
src
dest
強い型指定された DataSetです
注:必ずしもVB.NETであるとは限りません
2 番目のパラメーターとして指定する必要があるとIEqualityComparer
思いますが、方法がわかりません。おそらく、新しい行を識別するための別の(より高速な)アプローチがあります。
背景:
MySQL データベースから SQL-Server データベースにテーブルをインポートしています。主キーのみをチェックし、行の内容を比較しないことで十分です。この例のテーブルには数行しか含まれていませんが、2 つのテーブルには約 100000 行が含まれているため、ソースと宛先の同期ではパフォーマンスが重要になります。