ホームページ >データベース >mysql チュートリアル >大規模な DataTable をデータベースに効率的に挿入するにはどうすればよいですか?
SqlBulkCopy によるデータベース挿入の高速化
大きな DataTable を行ごとに挿入するのは非効率です。 SqlBulkCopy
クラスは、SQL Server データベースへの一括データ挿入のための、より高速なソリューションを提供します。
まず、データベース接続を確立します。次に、接続文字列を指定して SqlBulkCopy
オブジェクトを作成します。 作成時に ID 列の処理などのオプションをカスタマイズすることもできます。
重要なのは、DataTable 列を対応するデータベース テーブル列にマップすることです。 列名が揃っている場合は、それらを bulkCopy.ColumnMappings
にコピーするだけです。それ以外の場合は、手動でマップします。
最後に、ターゲット テーブルと、必要に応じてタイムアウトを指定して、WriteToServer
を呼び出します。この 1 回の呼び出しで一括挿入が実行され、個々の行の挿入よりもパフォーマンスが大幅に向上します。
以上が大規模な DataTable をデータベースに効率的に挿入するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。