行の変更履歴を保持する
Fresh Fruit Delivery 社では、Customers テーブルに対して行われた変更を追跡する必要があります。
テーブル内の行を変更するすべてのステートメントを対象にする新しいトリガーを作成するよう依頼されています。
この演習はコースの一部です
SQL Server のトリガー構築と最適化
演習の手順
CopyCustomersToHistoryという新しいトリガーを作成します。- そのトリガーを
Customersテーブルに関連付けます。 - 行が追加または変更されたときにトリガーが発火するようにします。
- 特殊テーブル
insertedから情報を抽出します。
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
-- Create a trigger to keep row history
CREATE TRIGGER ___
ON ___
-- Fire the trigger for new and updated rows
AFTER ___, UPDATE
AS
INSERT INTO CustomersHistory (CustomerID, Customer, ContractID, ContractDate, Address, PhoneNo, Email, ChangeDate)
SELECT CustomerID, Customer, ContractID, ContractDate, Address, PhoneNo, Email, GETDATE()
-- Get info from the special table that keeps new rows
FROM ___;