Thank you so much
But I have a question(It might be dumb,I'm not sure. I'm a beginner)
but the @@spid here returns the sessionid of the storeprocedure???(I was thinking since the current sessionID would be the execution of trigger)
ALTER TRIGGER [dbo].[tuReferral_UpdateAudit]
ON [dbo].[tReferral]
FOR UPDATE
AS
-- Select the context information
DECLARE @sess VARBINARY(128), @var NVARCHAR(64)
SET @sess = (SELECT context_info FROM master.dbo.sysprocesses
WHERE spid = @@spid)
SET @var = ISNULL(CAST(@sess AS NVARCHAR(64)),'')
-- Keep Audit "Update" audit columns current (reflect data changes) for table: tReferral
UPDATEtbl
SET
tbl.UpdateLogin= SUSER_SNAME()
,tbl.UpdateApp= SUBSTRING(APP_NAME(),1,64)
,tbl.UpdateDateTime= CURRENT_TIMESTAMP
FROMdbo.tReferral tbl
JOIN (SELECT *,CHECKSUM(*) AS CSUM FROM inserted) i
ON tbl.ReferralID = i.ReferralID
JOIN (SELECT *,CHECKSUM(*) AS CSUM FROM deleted) d
ON i.ReferralID = d.ReferralID
WHEREi.CSUM != d.CSUM
AND SUSER_SNAME() NOT IN ('sa','PKX\prodsqlsvc')
and @var <> 'SKIPME'
ThankYou
Swetha