sp_delete_jobstep (Transact-SQL)

从作业中删除作业步骤。

主题链接图标Transact-SQL 语法约定

语法

sp_delete_jobstep { [ @job_id = ] job_id | [ @job_name = ] 'job_name' } , 
     [ @step_id = ] step_id 

参数

  • [ @job_id= ] job_id
    从中删除步骤的作业的标识号。job_id的数据类型为 uniqueidentifier,默认值为 NULL。

  • [ @job_name= ] 'job_name'
    从中删除步骤的作业的名称。job_name的数据类型为 sysname,默认值为 NULL。

    注意注意

    必须指定 job_id 或 job_name;但不能两个都指定。

  • [ @step_id= ] step_id
    要删除的步骤的标识号。step_id的数据类型为 int,无默认值。

返回代码值

0(成功)或 1(失败)

结果集

注释

删除作业步骤将自动更新引用此步骤的其他作业步骤。

有关与某一特定作业关联的步骤的详细信息,请运行 sp_help_jobstep

注意注意

若将 step_id 值指定为 0,则调用 sp_delete_jobstep 时将删除作业中的所有步骤。

Microsoft SQL Server Management Studio 提供易于使用的图形方法来管理作业,建议使用该方法创建和管理作业基础结构。

权限

默认情况下,只有 sysadmin 固定服务器角色的成员才可以执行此存储过程。其他用户必须被授予 msdb 数据库中下列 SQL Server 代理固定数据库角色的权限之一:

  • SQLAgentUserRole

  • SQLAgentReaderRole

  • SQLAgentOperatorRole

有关这些角色的权限的详细信息,请参阅 SQL Server 代理固定数据库角色

只有 sysadmin 中的成员才能删除其他用户拥有的作业步骤。

示例

以下是从作业 Weekly Sales Data Backup 中删除作业步骤 1 的示例。

USE msdb ;
GO

EXEC dbo.sp_delete_jobstep
    @job_name = N'Weekly Sales Data Backup',
    @step_id = 1 ;
GO