同じテーブルの2つの行(INSERTED
&DELETED
)を比較し、値を比較する必要があります。次に、一致しない列を取得する必要があります。トリガーの内部。
これまでに試したことですが、これら2つの行を比較して、異なる値を含む列名を取得する方法がわかりません。
SELECT *
FROM inserted i
INNER JOIN deleted d ON d.PurchasingDocItemNo = i.PurchasingDocItemNo
AND d.PurchasingDocNo = i.PurchasingDocNo
AND d.ReferenceDocumentNo = i.ReferenceDocumentNo
AND d.ProductNo = i.ProductNo
選択を次のように変更します。
SELECT
-- For each column you're checking. Also account for ISNull if you need to
CASE WHEN I.Col1 = D.Col1 THEN 0 ELSE 1 END AS Col1Changed.......
FROM INSERTED I
INNER JOIN DELETED D on (I.<PK> = D.<PK>)
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加