保留列異動的歷史紀錄
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 ___;