SQL SERVER 2008无法删除作业的解决方法
2013-06-28 18:39
267 查看
与维护计划有关的表:
1.sysmaintplan_log(记录维护计划运行log);
2.sysjobschedules(记录代理作业的作业信息);
3.sysmaintplan_subplans(记录维护计划的子计划信息);
4.sysjobs_view(相关的作业信息)
以上这4张表有着PK和FK的关联关系,在删除作业时,很容易因为发生FK的冲突而导致失败。
具体的处理方法如下:
use [msdb]
declare @job_name varchar(100)
set @job_name = N'job_name'
--注:job_name为维护计划对应的job name
删除在计划里面的日志
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
特别注意必须首先删除sysmaintplan_log,若表里只有id一致的记录则直接清空sysmaintplan_log,sysmaintplan_subplans表即可。
1.sysmaintplan_log(记录维护计划运行log);
2.sysjobschedules(记录代理作业的作业信息);
3.sysmaintplan_subplans(记录维护计划的子计划信息);
4.sysjobs_view(相关的作业信息)
以上这4张表有着PK和FK的关联关系,在删除作业时,很容易因为发生FK的冲突而导致失败。
具体的处理方法如下:
use [msdb]
declare @job_name varchar(100)
set @job_name = N'job_name'
--注:job_name为维护计划对应的job name
删除在计划里面的日志
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
特别注意必须首先删除sysmaintplan_log,若表里只有id一致的记录则直接清空sysmaintplan_log,sysmaintplan_subplans表即可。
相关文章推荐
- SQL Server 2008 无法删除用户的解决方法
- 如果解决Sql Server 错误(error 14274: 无法添加、更新或删除从msx服务器上发起的作业.)
- SQL Server“错误14274: 无法添加、更新或删除从MSX服务器上发起的作业”的解决办法
- SQL Server 2008附加数据库失败:无法打开物理文件拒绝访问解决方法
- SQL Server 2008 报错 1069错误(由于登录失败而无法启动服务)解决方法
- SQL Server 2008打开输入sa密码提示无法登陆数据库的解决方法
- SQL SERVER 2008 无法启动T-SQL调试的解决方法
- SQL Server 无法删除发布服务解决方法
- sql Server 2008 R2还原或删除数据库时总是出错的解决方法
- SQL SERVER 2008 无法附加数据库的解决方法
- SQL SERVER 2008 无法启动T-SQL调试的解决方法
- SQL Server“错误14274: 无法添加、更新或删除从MSX服务器上发起的作业”的解决办法
- SQL SERVER 数据库主体在该数据库中拥有架构,无法删除解决方法
- SQL SERVER 2008 无法启动T-SQL调试的解决方法(亲自实践)
- SQL SERVER 2008 无法启动T-SQL调试的解决方法,无法启用调试解决办法
- SQL SERVER 2008 r2跨网段订阅出现”由于出现操作系统错误 1326。进程无法读取文件 登录失败: 未知的用户名或错误密码“解决方法
- SQL Server 2008 重起失败,删除PendingFileRenameOperations后仍无法重起问题的解决办法
- 错误14274:无法添加、更新或删除从msx服务器上发起的作业(或其步骤或调度)的解决方法
- SQL Server 2008 R2 SSRS 安装配置后无法使用问题的解决方法
- SQL Server 2008还原数据时报错“因为数据库正在使用,所以无法获得对数据库的独占访问权”的解决方法