ホームページ >データベース >mysql チュートリアル >大規模な DataTable をデータベースに効率的に挿入するにはどうすればよいですか?

大規模な DataTable をデータベースに効率的に挿入するにはどうすればよいですか?

Patricia Arquette
Patricia Arquetteオリジナル
2025-01-07 22:35:48899ブラウズ

How Can I Efficiently Insert a Large DataTable into a Database?

SqlBulkCopy によるデータベース挿入の高速化

大きな DataTable を行ごとに挿入するのは非効率です。 SqlBulkCopy クラスは、SQL Server データベースへの一括データ挿入のための、より高速なソリューションを提供します。

まず、データベース接続を確立します。次に、接続文字列を指定して SqlBulkCopy オブジェクトを作成します。 作成時に ID 列の処理などのオプションをカスタマイズすることもできます。

重要なのは、DataTable 列を対応するデータベース テーブル列にマップすることです。 列名が揃っている場合は、それらを bulkCopy.ColumnMappings にコピーするだけです。それ以外の場合は、手動でマップします。

最後に、ターゲット テーブルと、必要に応じてタイムアウトを指定して、WriteToServer を呼び出します。この 1 回の呼び出しで一括挿入が実行され、個々の行の挿入よりもパフォーマンスが大幅に向上します。

以上が大規模な DataTable をデータベースに効率的に挿入するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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