質問: 私はここで解決することを望む問題に直面しています。私は、 `DataSet` 3つの異なるテーブルがあり、それをデータベーステーブルに挿入したいと思います。 私は`SqlBulkCopy`を使用してこれを行うことができますが、キャッチがあり、データがデータベースにすでに存在するかどうかを確認したい場合は、挿入の代わりに更新を取得する必要があります。 データがデータベーステーブルに存在しない場合は、それを挿入します。これについての助けに感謝します。 私は、各レコードを繰り返し処理して、それが存在するかどうかを確認するプロシージャを起動することができることを知っています。しかし、データサイズが膨大で、各レコードを繰り返し処理するのは時間がかかるので、私はこのアプローチを使用したくありません。 よろしく
回答: **免責事項** :私はプロジェクトバルクオペレーションのオーナーです このプロジェクトでは、BulkInsert、BulkUpdate、BulkDelete、およびBulkMerge(Upsert)が可能です。 フックの下では、@marc_sが提案したもの(ほとんどの場合、一時テーブルにSqlBulkCopyを使用し、主キーに応じて挿入または更新するマージステートメントを実行します)を行います。 ``` var bulk = new BulkOperation(connection); bulk.BulkMerge(dt); ```