关于作业调度(在线急)

chenxin790311 2004-04-21 10:31:40
我用作业调度定时执行一个jsp,但这个作业始终就无法停止,请问有什么办法?
我可以通过调度一个bat实现访问这个jsp,但还是无法停止这个作业,请问有什么办法
...全文
56 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
zjcxc 2004-04-21
  • 打赏
  • 举报
回复
停止一个作业:

sp_stop_job
命令 SQLServerAgent 停止执行作业。

语法
sp_stop_job [@job_name =] 'job_name'
| [@job_id =] job_id
| [@originating_server =] 'master_server'
| [@server_name =] 'target_server'

参数
[@job_name =] 'job_name'

是要停止的作业名。job_name 的数据类型是 sysname,默认设置为 NULL。

[@job_id =] job_id

是要停止的作业标识号。job_id 的数据类型是 uniqueidentifier,默认设置为 NULL。

[@originating_server =] 'master_server'

是主服务器名。如果指定,则停止所有的多服务器作业。master_server 的数据类型是 nvarchar(30),默认设置为 NULL。只有在目标服务器上调用 sp_stop_job 时才指定该参数。



说明 只能指定前三个参数之一。


[@server_name =] 'target_server'

是要停止多服务器作业的特定目标服务器名。target_server 的数据类型是 nvarchar(30),默认设置为 NULL。只有在主服务器上对多服务器作业调用 sp_stop_job 时才指定该参数。

返回代码值
0(成功)或 1(失败)

结果集


注释
如果作业当前正在执行 CmdExec 类型的步骤,则将强行过早结束正在运行的进程(如 MyProgram.exe)。过早结束会导致不可预知的行为,如进程正在使用的文件保持打开。因此,如果作业包含 CmdExec 类型的步骤,应该只在没有办法的情况下才使用 sp_stop_job。

权限
执行权限默认授予 msdb 数据库中的 public 角色。可执行此存储过程而且是 sysadmin 固定角色成员的用户可以停止任何作业。不是 sysadmin 角色成员的用户使用 sp_stop_job 只能停止他/她所拥有的作业。

当 sysadmin 固定服务器角色成员的用户唤醒调用 sp_stop_job 时,sp_stop_job 将在 SQL Server 服务正在其中运行的安全上下文中执行。当用户不是 sysadmin 组的成员时,sp_stop_job 将模拟 SQL Server 代理代理帐户,而该帐户是通过 xp_sqlagent_proxy_account 指定的。如果代理帐户不可用,则 sp_stop_job 将失败。只有 Microsoft® Windows NT® 4.0 和 Windows 2000 有上述情况。在 Windows 9.x 上没有模拟,而且 sp_stop_job 总是在启动 SQL Server 的 Windows 9.x 用户的安全上下文中执行。

示例
下例停止名为 Archive Tables 的作业。

USE msdb
EXEC sp_stop_job @job_name = 'Archive Tables'

zjcxc 2004-04-21
  • 打赏
  • 举报
回复

你是用什么方法停止的? 如果不行删除掉这个作业.

27,579

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 应用实例
社区管理员
  • 应用实例社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧