次のトリガーがあります。
BEGIN
DECLARE @email varchar(200)
DECLARE @jobcode int
DECLARE @status char(1)
DECLARE @emaild varchar(200)
DECLARE @jobcoded int
DECLARE @statusd char(1)
SET @statusd = NULL
SELECT @status = z.status, @email = p.EMail, @jobcode = z.jobID
FROM zipoutfiles z
INNER JOIN inserted AS i ON z.jobID = i.jobID
INNER JOIN PS_LoginUser AS p ON z.UserID = p.UserID
SELECT @statusd = z.status, @emaild = p.EMail, @jobcoded = z.jobID
FROM zipoutfiles z
INNER JOIN deleted AS d ON z.jobID = d.jobID
INNER JOIN PS_LoginUser AS p ON z.UserID = p.UserID
WHERE d.jobID = @jobcode
IF ((@status = 'D' AND @statusd = 'R') OR (@status = 'D' AND @statusd = 'E'))
BEGIN
EXEC SendMail @email, @jobcode
END
END
ステータスが E から D または R から D になったときに SendMail を実行できるようにしたいのですが、D から D ではなく (再度更新された場合)、また D として挿入されたときにも実行できるようにしたいと考えています。