0

質問があります。以下の 2 つのステートメントがあります。

ステートメント #1

Insert into tblAudit (Col1, Col2)
Select Col1, Col2 From tblSoruce
Where "Same Condition"

ステートメント #2

Delete from tblSource
Where "Same Condition"

最初に、後で削除されるすべての行を監査テーブルに入れようとしています。

2 つのステートメント間の行を「欠落」させずにこれを達成する最善の方法は何ですか?

私がSQLステートメントを持っている方法では、行数が最初のステートメントから2番目のステートメントに変わる可能性がありますが、これは私が望むものではありません。(FK関係があるのでOUTPUT句は使えません)

より効率的な方法でこれを達成する方法についてのヘルプ(一時テーブルなし)

ありがとう。

4

1 に答える 1

1

値が tblSource から削除されたときに、トリガーを使用して監査ログへの挿入を自動的に実行できます。このようにして、削除された行を正確に把握し、 tblAudit に挿入する必要があります。

于 2013-04-30T19:52:20.870 に答える