ホームページ >データベース >mysql チュートリアル >SqlBulkCopy とオブジェクトのリストを使用して大規模なデータセットを SQL Server に効率的に挿入するにはどうすればよいですか?

SqlBulkCopy とオブジェクトのリストを使用して大規模なデータセットを SQL Server に効率的に挿入するにはどうすればよいですか?

DDD
DDDオリジナル
2024-12-30 04:22:23356ブラウズ

How Can I Efficiently Insert Large Datasets into SQL Server Using SqlBulkCopy and Lists of Objects?

SqlBulkCopy とリストを使用した大規模なデータ セットの挿入

質問: データ ソースが単純なリストですオブジェクト?

応答:

DataTable のような中間データ構造に依存せずにプロセスを簡素化するために FastMember を活用することを検討してください。これにより、パフォーマンスが大幅に向上します。以下に例を示します。

using(var bcp = new SqlBulkCopy(connection))
using(var reader = ObjectReader.Create(data, "Id", "Name", "Description"))
{
    bcp.DestinationTableName = "SomeTable";
    bcp.WriteToServer(reader);
}

FastMember の ObjectReader は非汎用データ ソースを処理でき、事前に明示的に定義しなくてもメンバー名の動的指定をサポートします。ただし、ObjectReader でメンバー名を指定しない場合は、SqlBulkCopy の ColumnMappings を使用すると有益な場合があります。

以上がSqlBulkCopy とオブジェクトのリストを使用して大規模なデータセットを SQL Server に効率的に挿入するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。