CREATE TRIGGER customerOptStatus
ON Customer
FOR INSERT, UPDATE
AS
declare @email varchar(100)
declare @errorId int,@Rowcount int
BEGIN
IF EXISTS
(
SELECT i.emailAddress
FROM Inserted i, Customer c
WHERE i.emailAddress = c.emailAddress
AND c.optInCD = 'no'
AND i.optInCD = 'yes'
)
BEGIN
SELECT @email = emailAddress FROM Inserted
UPDATE Customer
SET optStatus = 'NO'
WHERE emailAddress = @email
select @errorId=@@error,@Rowcount =@@ROWCOUNT
if @errorId <> 0
begin
insert into errorlogtable
select 'some error has occured email logged =' + @email,getdate(),suser_sname,@email
end
else
if @Rowcount =0
begin
insert into errorlogtable
select 'No records have been updated fro some bizzare reason email logged =' + @email,getdate(),suser_sname,@email
end
END
END