[英]Trigger Update another table After Insert
我有2個表Employee
和Employee_Backup
Employee
有3列
Employee_Backup
也有3列:
對於插入到表Employee
或在表Employee
更新的每一行,我想使用此條件在表Employee_Backup
設置Status
。
WHERE employee_backup.IDEmployee = employee.IDEmployee (inserted / updated)
那樣的東西?
CREATE TRIGGER tr_Employee_Insert
ON dbo.Employee
FOR INSERT
AS
UPDATE b
SET Status = 'Inserted'
FROM dbo.Employee_Backup b
INNER JOIN Inserted i ON b.EmployeeID = i.EmployeeID
CREATE TRIGGER tr_Employee_Update
ON dbo.Employee
FOR UPDATE
AS
UPDATE b
SET Status = 'Updated'
FROM dbo.Employee_Backup b
INNER JOIN Inserted i ON b.EmployeeID = i.EmployeeID
你基本上需要加入 Inserted
其中包含已從基表(插入(或更新)的所有行偽代碼表dbo.Employee
)和Employee_Backup
表- ,然后使用該結果從JOIN為您的基礎設置UPDATE
聲明。
注意:這不會將任何新行插入Employee_Backup
當你添加新的行dbo.Employee
-是你想要的嗎? 如果沒有,則必須稍微更改FOR INSERT
觸發器。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.