TR_SMARTQUERYINSTANCE_DELETE_IDSET

Definition

Copy


        create trigger dbo.TR_SMARTQUERYINSTANCE_DELETE_IDSET on dbo.SMARTQUERYINSTANCE with execute as owner after delete as 
        set nocount on

        declare @SMARTQUERYINSTANCEID uniqueidentifier
        declare @FORMAT smallint

        -- declare a cursor that returns all of the deleted queries
        declare deleted_query_cursor cursor local FAST_FORWARD for
            select ID from deleted

        OPEN deleted_query_cursor

        FETCH NEXT from deleted_query_cursor
        into @SMARTQUERYINSTANCEID

        -- Check @@FETCH_STATUS to see if there are any more rows to fetch.
        WHILE @@FETCH_STATUS = 0
        begin

          -- delete related table-value function
            exec USP_SMARTQUERYINSTANCE_DELETEIDSET @SMARTQUERYINSTANCEID

          -- for static queries, delete the related static table
            exec USP_SMARTQUERYINSTANCE_DELETESTATICTABLE @SMARTQUERYINSTANCEID

            FETCH NEXT from deleted_query_cursor into @SMARTQUERYINSTANCEID
        end

        CLOSE deleted_query_cursor
        DEALLOCATE deleted_query_cursor