SQLSERVER 2008 中刪除作業時遇到無法刪除
解決辦法:
USE [msdb] DECLARE @job_name VARCHAR(100) SET @job_name = N'JobName' --注:jobName為維護計划對應的jobName --刪除在計划里面的日志 DELETE sysmaintplan_log FROM sysmaintplan_subplans AS subplans INNER JOIN sysjobs_view AS syjobs ON subplans.job_id = syjobs.job_id INNER JOIN sysmaintplan_log ON subplans.subplan_id =sysmaintplan_log.subplan_id WHERE (syjobs.name = @job_name) --刪除代理的作業 DELETE sysjobschedules FROM sysjobs_view v INNER JOIN sysjobschedules o ON v.job_id=o.job_id WHERE v.name=@job_name --刪除子計划 DELETE sysmaintplan_subplans FROM sysmaintplan_subplans AS subplans INNER JOIN sysjobs_view AS syjobs ON subplans.job_id = syjobs.job_id WHERE (syjobs.name = @job_name) --刪除作業 DELETE FROM msdb.dbo.sysjobs_view WHERE name = @job_name