1

を使用して、Excel シートから SQL にレコードを挿入しSQLBulkCopyました。

コードは私にとっては問題なく動作します。

しかし、トリガーベースの挿入を開始する必要があります。

トリガーでは、に基づいて別のテーブルにレコードを挿入していますInserted

それもうまくいきます。

しかし、そのレコードを挿入して更新しようとしている別のテーブルがすでにそのレコードを持っていることを確認している場合、それはうまくいきません。

どうすれば問題を解決できますか?

4

1 に答える 1

1

SQL Server 2008を使用している場合は、トリガーでマージステートメントを使用します

例:

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)
于 2012-09-21T07:24:54.487 に答える