![]() |
---|
CREATE trigger TR_COURSEGRADINGMARKINGCOLUMN_UPDATE_DELETESTUDENTGRADES on dbo.COURSEGRADINGMARKINGCOLUMN after update not for replication as begin if update(GRADED) begin declare @ChangeAgentID uniqueidentifier exec dbo.USP_CHANGEAGENT_GETORCREATECHANGEAGENTFROMCONTEXT @ChangeAgentID output --Cache current context information declare @CONTEXTCACHE varbinary(128); set @CONTEXTCACHE = CONTEXT_INFO(); --Set CONTEXT_INFO to @CHANGEAGENTID if @CHANGEAGENTID is not null set CONTEXT_INFO @CHANGEAGENTID; delete dbo.STUDENTMARKINGCOLUMNGRADE from dbo.STUDENTMARKINGCOLUMNGRADE join deleted on STUDENTMARKINGCOLUMNGRADE.COURSEGRADINGMARKINGCOLUMNID = deleted.ID join inserted on deleted.ID = inserted.ID where deleted.GRADED = 1 and inserted.GRADED = 0 --Reset CONTEXT_INFO to previous value if not @CONTEXTCACHE is null set CONTEXT_INFO @CONTEXTCACHE; end end |