删除ManagementDataWarehouse(MDW)job失败(三)

2014-11-24 17:09:16 · 作者: · 浏览: 1
NT

SELECT @counter= COUNT(is_running)

FROM syscollector_collection_sets_internal

WHERE is_running = 1

IF (@counter = 0)

BEGIN

UPDATE syscollector_config_store_internal

SET parameter_value =0

WHERE parameter_name IN('CollectorEnabled');

UPDATE syscollector_config_store_internal

SET parameter_value =NULL

WHERE parameter_name IN( 'MDWDatabase', 'MDWInstance' )

END

-- Delete collection set logs

DELETE FROMsyscollector_execution_log_internal

WHERE (collection_set_id= @collection_set_id OR@collection_set_id IS NULL)

IF (@TranCounter = 0)

BEGIN

COMMIT TRANSACTION

END

RETURN(0)

END TRY

BEGIN CATCH

IF (@TranCounter = 0 OR XACT_STATE() = -1)

ROLLBACK TRANSACTION

ELSE IF (XACT_STATE() = 1)

ROLLBACK TRANSACTIONtran_cleanup_collection_set

DECLARE @ErrorMessage NVARCHAR(4000);

DECLARE @ErrorSeverity INT;

DECLARE @ErrorState INT;

DECLARE @ErrorNumber INT;

DECLARE @ErrorLine INT;

DECLARE @ErrorProcedure NVARCHAR(200);

SELECT @ErrorLine = ERROR_LINE(),

@ErrorSeverity = ERROR_SEVERITY(),

@ErrorState = ERROR_STATE(),

@ErrorNumber = ERROR_NUMBER(),

@ErrorMessage = ERROR_MESSAGE(),

@ErrorProcedure = ISNULL(ERROR_PROCEDURE(),'-');

RAISERROR (14684, @ErrorSeverity, -1 , @ErrorNumber, @ErrorSeverity,@ErrorState, @ErrorProcedure, @ErrorLine,@ErrorMessage);

RETURN (1)

END CATCH

END