sp_delete_jobstep (Transact-SQL)

適用対象: SQL ServerAzure SQL Managed Instance

SQL Server エージェント サービスのジョブからジョブ ステップを削除します。

Transact-SQL 構文表記規則

構文

sp_delete_jobstep
    [ [ @job_id = ] 'job_id' ]
    [ , [ @job_name = ] N'job_name' ]
    , [ @step_id = ] step_id
[ ; ]

引数

[ @job_id = ] 'job_id'

ステップを削除するジョブの識別番号を指定します。 @job_idは uniqueidentifier で、既定値は NULL.

@job_idまたは@job_name指定する必要があります。両方を指定することはできません。

[ @job_name = ] N'job_name'

ステップを削除するジョブの名前を指定します。 @job_nameは sysname で、既定値は NULL.

@job_idまたは@job_name指定する必要があります。両方を指定することはできません。

[ @step_id = ] step_id

削除するステップの識別番号を指定します。 @step_idは int で、既定値はありません。

リターン コードの値

0 (成功) または 1 (失敗)。

結果セット

ありません。

解説

ジョブ ステップを削除すると、削除したステップを参照する他のジョブ ステップは自動的に更新されます。

特定のジョブに関連付けられているステップの詳細については、次を実行 sp_help_jobstepします。

Note

@step_id値 0 を指定して呼び出すとsp_delete_jobstep、ジョブのすべてのジョブ ステップが削除されます。

SQL Server Management Studio は、簡単かつ直観的な方法でジョブを管理するためのツールで、ジョブ体系の作成および管理に最適です。

このストアド プロシージャは、Azure SQL Database の sp_delete_jobstep Azure Elastic Jobs サービスの同様の オブジェクトと名前を共有します。 エラスティック ジョブのバージョンについては、「jobs.sp_delete_jobstep (Azure エラスティック ジョブ) (Transact-SQL)」を参照してください

アクセス許可

このストアド プロシージャは、db_owner ロールによって所有されています。 任意のユーザーにアクセス許可を付与 EXECUTE できますが、SQL Server のアップグレード中にこれらのアクセス許可がオーバーライドされる可能性があります。

他のユーザーには、データベース内の固定データベース ロールSQL Server エージェント次のいずれかを付与するmsdb必要があります。

  • SQLAgentUserRole
  • SQLAgentReaderRole
  • SQLAgentOperatorRole

これらのロールの権限の詳細については、「 SQL Server エージェントの固定データベース ロール」を参照してください。

sysadmin のメンバーのみが、別のユーザーが所有するジョブ ステップを削除できます。

次の例では、ジョブ ステップ 1 をジョブから削除します Weekly Sales Data Backup

USE msdb;
GO

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