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 サイトの他の関連記事を参照してください。