質問: `SQLBulkCopy`を使用してExcelシートからSQLにレコードを挿入し`SQLBulkCopy` 。 コードは私のためにうまく動作します。 しかし、私はトリガベースの挿入を起動する必要があります。 トリガでは、私はに基づいて、別のテーブルにレコードを挿入しています`Inserted` それもうまく動作します。 レコードを挿入して更新しようとしているそのレコードをすでに持っている別のテーブルをチェックしていれば、それは私には当てはまりません。 問題を解決するにはどうしたらいいですか?
回答: SQL Server 2008を使用している場合は、トリガーでMergeステートメントを使用します。 例: ``` MERGE INTO dbo.Table1 AS t USING dbo.inserted AS i ON t.id= i.id WHEN MATCHED THEN UPDATE SET t.col1= i.col1, t.col2= i.col2 WHEN NOT MATCHED THEN INSERT (col1, col2) VALUES (i.col1, i.col2) ```