Created
October 31, 2013 01:58
-
-
Save huoxudong125/7243337 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
CREATE PROC dbo.DropJob | |
@JobName AS VARCHAR(200) = NULL | |
AS | |
DECLARE @msg AS VARCHAR(500); | |
IF @JobName IS NULL | |
BEGIN | |
SET @msg = N'A job name must be supplied for parameter @JobName.'; | |
RAISERROR(@msg,16,1); | |
RETURN; | |
END | |
IF EXISTS ( | |
SELECT subplan_id FROM msdb.dbo.sysmaintplan_log WHERE subplan_id IN | |
( SELECT subplan_id FROM msdb.dbo.sysmaintplan_subplans WHERE job_id IN | |
(SELECT job_id FROM msdb.dbo.sysjobs_view WHERE name = @JobName))) | |
BEGIN | |
DELETE FROM msdb.dbo.sysmaintplan_log WHERE subplan_id IN | |
( SELECT subplan_id FROM msdb.dbo.sysmaintplan_subplans WHERE job_id IN | |
(SELECT job_id FROM msdb.dbo.sysjobs_view WHERE name = @JobName)); | |
DELETE FROM msdb.dbo.sysmaintplan_subplans WHERE job_id IN | |
(SELECT job_id FROM msdb.dbo.sysjobs_view WHERE name = @JobName); | |
EXEC msdb.dbo.sp_delete_job @job_name=@JobName, @delete_unused_schedule=1; | |
END | |
ELSE IF EXISTS ( | |
SELECT subplan_id FROM msdb.dbo.sysmaintplan_subplans WHERE job_id IN | |
(SELECT job_id FROM msdb.dbo.sysjobs_view WHERE name = @JobName)) | |
BEGIN | |
DELETE FROM msdb.dbo.sysmaintplan_subplans WHERE job_id IN | |
(SELECT job_id FROM msdb.dbo.sysjobs_view WHERE name = @JobName); | |
EXEC msdb.dbo.sp_delete_job @job_name=@JobName, @delete_unused_schedule=1; | |
END | |
ELSE | |
BEGIN | |
EXEC msdb.dbo.sp_delete_job @job_name=@JobName, @delete_unused_schedule=1; | |
END | |
GO | |
Now you can call the SP with the following; | |
USE [msdb]; | |
EXEC dbo.DropJob @JobName = N'Shrink_AWP_Databases.Subplan_1'; |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment