sp_delete_job (Transact-SQL)sp_delete_job (Transact-SQL)

適用対象:Applies to: はいSQL ServerSQL Server (サポートされているすべてのバージョン) yesSQL ServerSQL Server (all supported versions) 適用対象:Applies to: はいSQL ServerSQL Server (サポートされているすべてのバージョン) yesSQL ServerSQL Server (all supported versions)

ジョブを削除します。Deletes a job.

トピック リンク アイコン Transact-SQL 構文表記規則Topic link icon Transact-SQL Syntax Conventions

構文Syntax

  
sp_delete_job { [ @job_id = ] job_id | [ @job_name = ] 'job_name' } ,  
     [ , [ @originating_server = ] 'server' ]   
     [ , [ @delete_history = ] delete_history ]  
     [ , [ @delete_unused_schedule = ] delete_unused_schedule ]  

引数Arguments

[ @job_id = ] job_id 削除するジョブの識別番号を指定します。[ @job_id = ] job_id Is the identification number of the job to be deleted. job_iduniqueidentifier,、既定値は NULL です。job_id is uniqueidentifier, with a default of NULL.

[ @job_name = ] 'job_name' 削除するジョブの名前を指定します。[ @job_name = ] 'job_name' Is the name of the job to be deleted. job_namesysname,、既定値は NULL です。job_name is sysname, with a default of NULL.

注意

Job_idまたはjob_nameのいずれかを指定する必要があります。両方を指定することはできません。Either job_id or job_namemust be specified; both cannot be specified.

[ @originating_server = ] 'server' 内部使用。[ @originating_server = ] 'server' For internal use.

[ @delete_history = ] delete_history ジョブの履歴を削除するかどうかを指定します。[ @delete_history = ] delete_history Specifies whether to delete the history for the job. delete_historyビット,、既定値は 1です。delete_history is bit, with a default of 1. Delete_history1の場合、ジョブのジョブ履歴は削除されます。When delete_history is 1, the job history for the job is deleted. Delete_history0の場合、ジョブ履歴は削除されません。When delete_history is 0, the job history is not deleted.

ジョブが削除され、履歴が削除されていない場合、ジョブの履歴情報はエージェントのグラフィカルユーザーインターフェイスのジョブ履歴に表示されません SQL ServerSQL Server が、情報はmsdbデータベースのsysjobhistoryテーブルに残ります。Note that when a job is deleted and the history is not deleted, historical information for the job will not display in the SQL ServerSQL Server Agent graphical user interface job history, but the information will still reside in the sysjobhistory table in the msdb database.

[ @delete_unused_schedule = ] delete_unused_schedule 他のジョブにアタッチされていない場合に、このジョブにアタッチされているスケジュールを削除するかどうかを指定します。[ @delete_unused_schedule = ] delete_unused_schedule Specifies whether to delete the schedules attached to this job if they are not attached to any other job. delete_unused_scheduleビット,、既定値は 1です。delete_unused_schedule is bit, with a default of 1. Delete_unused_schedule1の場合、そのスケジュールを参照するジョブが他にない場合、このジョブにアタッチされているスケジュールは削除されます。When delete_unused_schedule is 1, schedules attached to this job are deleted if no other jobs reference the schedule. Delete_unused_schedule0の場合、スケジュールは削除されません。When delete_unused_schedule is 0, the schedules are not deleted.

リターン コードの値Return Code Values

0 (成功) または 1 (失敗)0 (success) or 1 (failure)

結果セットResult Sets

なしNone

解説Remarks

** @ Originating_server**引数は、内部使用のために予約されています。The @originating_server argument is reserved for internal use.

** @ Delete_unused_schedule**引数は、どのジョブにもアタッチされていないスケジュールを自動的に削除することによって、以前のバージョンの SQL Server との下位互換性を提供します。The @delete_unused_schedule argument provides backward compatibility with previous versions of SQL Server by automatically removing schedules that are not attached to any job. このパラメーターでは、既定で互換動作が設定されることに注意してください。Notice that this parameter defaults to the backward-compatible behavior. ジョブにアタッチされていないスケジュールを保持するには、 ** @ delete_unused_schedule引数として値0**を指定する必要があります。To retain schedules that are not attached to a job, you must provide the value 0 as the @delete_unused_schedule argument.

SQL Server Management StudioSQL Server Management Studio は、ジョブを簡単に管理できるグラフィカルなツールです。ジョブのインフラストラクチャを作成し、管理するには、このツールを使用することをお勧めします。provides an easy, graphical way to manage jobs, and is the recommended way to create and manage the job infrastructure.

このストアド プロシージャでは、メンテナンス プランやメンテナンス プランの一部であるジョブを削除できません。This stored procedure cannot delete maintenance plans, and cannot delete jobs that are part of maintenance plans. 代わりに SQL Server Management StudioSQL Server Management Studio を使用して、メンテナンス プランを削除します。Instead, use SQL Server Management StudioSQL Server Management Studio to delete maintenance plans.

アクセス許可Permissions

既定では、 sysadmin 固定サーバーロールのメンバーは、このストアドプロシージャを実行できます。By default, members of the sysadmin fixed server role can execute this stored procedure. 他のユーザーには、 SQL ServerSQL Server msdb データベースの次のいずれかの エージェント固定データベース ロールが許可されている必要があります。Other users must be granted one of the following SQL ServerSQL Server Agent fixed database roles in the msdb database:

  • SQLAgentUserRoleSQLAgentUserRole

  • SQLAgentReaderRoleSQLAgentReaderRole

  • SQLAgentOperatorRoleSQLAgentOperatorRole

これらのロールの権限の詳細については、「 SQL Server エージェントの固定データベース ロール」を参照してください。For details about the permissions of these roles, see SQL Server Agent Fixed Database Roles.

sp_delete_job を実行して任意のジョブを削除できるのは、 sysadmin 固定サーバー ロールのメンバーです。Members of the sysadmin fixed server role can execute sp_delete_job to delete any job. sysadmin 固定サーバー ロールのメンバーでないユーザーは、自分が所有するジョブのみを削除できます。A user that is not a member of the sysadmin fixed server role can only delete jobs owned by that user.

Examples

次の例では、ジョブ NightlyBackups を削除します。The following example deletes the job NightlyBackups.

USE msdb ;  
GO  
  
EXEC sp_delete_job  
    @job_name = N'NightlyBackups' ;  
GO  

参照See Also

sp_add_job (Transact-SQL) sp_add_job (Transact-SQL)
sp_help_job (Transact-sql) sp_help_job (Transact-SQL)
sp_update_job (Transact-sql) sp_update_job (Transact-SQL)
システム ストアド プロシージャ (Transact-SQL)System Stored Procedures (Transact-SQL)