仅当字段在更新前为假时,SQL Server才会触发

问题描述 投票:0回答:1

我已在下面编写了触发器,如果​​emailstudio列已更新,该触发器将插入值。此列可以为0或1。

我如何编写触发器,以便仅在emailstudio列从0更改为1时才触发,

谢谢

ALTER TRIGGER [dbo].[RM_Est_Email_Trigger]
ON  [dbo].[K3_BriefHeader] 
AFTER UPDATE
AS 
BEGIN
    SET NOCOUNT ON;

    DECLARE @estimate int, @Email_Date datetime, @status int, @emailstudio bit
    SET @estimate = (SELECT Estimate from inserted)
    set @Email_Date = GETDATE()
    SET @status = (SELECT Status from inserted)
    SET @emailstudio = (SELECT EmailStudio from inserted)

    IF UPDATE (EmailStudio)
    BEGIN
        INSERT INTO [dbo].[K3_EstimateEmailDate] ([Estimate], [Email_Date],[Status], [EmailStudio])
        VALUES (@estimate, @Email_Date, @status, @emailstudio)
    END
END
sql-server tsql database-trigger
1个回答
© www.soinside.com 2019 - 2024. All rights reserved.