SQL Server 2005上的维护计划有时会因为迁移或者改机器名等原因出现异常且不能直接删除掉。
这时候就要去msdb数据库中将对应表的相关数据删除。
删除步骤:
1.删除维护计划日志中的对应记录
2.删除维护计划子计划对应的记录
3.删除作业调度对应的记录
4.删除维护计划作业对应的记录
5.删除维护计划对应的记录
对应脚本如下:
use msdb
GO
declare @JobName varchar(255),@MaintplanName varchar(255)
declare @JobID varchar(255),@SubplanID varchar(255)
set @JobName='TestJob'--需要删除的作业名称
set @MaintplanName='TestMaint'--需要删除的维护计划名称
select @JobID=job_id from dbo.sysjobs where name=@JobName
select @SubplanID=subplan_id from dbo.sysmaintplan_subplans where job_id=@JobID
delete dbo.sysmaintplan_log where subplan_id=@SubplanID
delete dbo.sysmaintplan_subplans where job_id=@JobID
delete dbo.sysjobschedules where job_id=@JobID
delete dbo.sysjobs where job_id=@JobID
delete dbo.sysmaintplan_plans where name=@MaintplanName