保留行变更历史
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 ___;