Copy Code Trigger Definition

                
                    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