次の方法で共有


sp_update_job (Transact-SQL)

ジョブの属性を変更します。

トピック リンク アイコン Transact-SQL 構文表記規則

構文

sp_update_job [ @job_id =] job_id | [@job_name =] 'job_name'
     [, [@new_name =] 'new_name' ] 
     [, [@enabled =] enabled ]
     [, [@description =] 'description' ] 
     [, [@start_step_id =] step_id ]
     [, [@category_name =] 'category' ] 
     [, [@owner_login_name =] 'login' ]
     [, [@notify_level_eventlog =] eventlog_level ]
     [, [@notify_level_email =] email_level ]
     [, [@notify_level_netsend =] netsend_level ]
     [, [@notify_level_page =] page_level ]
     [, [@notify_email_operator_name =] 'operator_name' ]
     [, [@notify_netsend_operator_name =] 'netsend_operator' ]
     [, [@notify_page_operator_name =] 'page_operator' ]
     [, [@delete_level =] delete_level ] 
     [, [@automatic_post =] automatic_post ]

引数

  • [ @job_id =] job_id
    更新するジョブの識別番号を指定します。 job_idのデータ型は uniqueidentifier です。

  • [ @job_name =] 'job_name'
    ジョブの名前を指定します。 job_nameのデータ型は nvarchar(128) です。

    注意

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

  • [ @new_name =] 'new_name'
    ジョブの新しい名前を指定します。 new_nameのデータ型は nvarchar(128) です。

  • [ @enabled =] enabled
    ジョブを有効 (1) にするか、無効 (0) にするかを指定します。 enabledのデータ型は tinyint です。

  • [ @description =] 'description'
    ジョブの説明を指定します。 description のデータ型は nvarchar(512) です。

  • [ @start_step_id =] step_id
    ジョブで実行する最初のステップの ID 番号を指定します。 step_idのデータ型は int です。

  • [ @category_name =] 'category'
    ジョブのカテゴリを指定します。 categoryのデータ型は nvarchar(128) です。

  • [ @owner_login_name =] 'login'
    ジョブを所有するログインの名前です。 loginのデータ型は nvarchar(128) です。ジョブの所有権を変更できるのは、sysadmin 固定サーバー ロールのメンバーだけです。

  • [ @notify_level_eventlog =] eventlog_level
    対象となるジョブのエントリをいつ Microsoft Windows アプリケーション ログに記録するかを指定します。 eventlog_levelのデータ型は int で、次のいずれかの値を指定できます。

    説明 (動作)

    0

    なし

    1

    成功時

    2

    失敗時

    3

    毎回

  • [ @notify_level_email =] email_level
    ジョブの完了時にメールが送信されるタイミングを指定します。 email_levelのデータ型は int です。 email_levelは eventlog_level と同じ値を使用します。

  • [ @notify_level_netsend =] netsend_level
    ジョブの完了時にネットワーク メッセージが送信されるタイミングを指定します。 netsend_levelのデータ型は int です。 netsend_levelは eventlog_level と同じ値を使用します。

  • [ @notify_level_page =] page_level
    ジョブの完了時にポケットベルによる通知が送信されるタイミングを指定します。 page_levelのデータ型は int です。 page_level は eventlog_level と同じ値を使用します。

  • [ @notify_email_operator_name =] 'email_name'
    email_level に達したときに電子メールを送信するオペレーターの名前を指定します。 email_name のデータ型は nvarchar(128) です。

  • [ @notify_netsend_operator_name =] 'netsend_operator'
    ネットワーク メッセージの送信先のオペレーター名を指定します。 netsend_operator のデータ型は nvarchar(128) です。

  • [ @notify_page_operator_name =] 'page_operator'
    ポケットベルによる通知の送信先のオペレーター名を指定します。 page_operator のデータ型は nvarchar(128) です。

  • [ @delete_level =] delete_level
    ジョブが削除されるタイミングを指定します。 delete_valueのデータ型は int です。 delete_levelは eventlog_level と同じ値を使用します。

  • [ @automatic_post =] automatic_post
    予約済み。

戻り値

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

説明

sp_update_job は、msdb データベースから実行する必要があります。

sp_update_job は、パラメーター値が提供されている設定のみを変更します。 パラメーターを省略した場合は、現在の設定が保持されます。

権限

既定では、このストアド プロシージャを実行できるのは、sysadmin 固定サーバー ロールのメンバーです。 他のユーザーには、msdb データベースの次のいずれかの SQL Server エージェント固定データベース ロールが許可されている必要があります。

  • SQLAgentUserRole

  • SQLAgentReaderRole

  • SQLAgentOperatorRole

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

このストアド プロシージャを使用して、他のユーザーが所有するジョブの属性を編集できるのは、sysadmin のメンバーだけです。

使用例

次の例では、ジョブ NightlyBackups の名前、説明、有効な状態を変更します。

USE msdb ;
GO

EXEC dbo.sp_update_job
    @job_name = N'NightlyBackups',
    @new_name = N'NightlyBackups -- Disabled',
    @description = N'Nightly backups disabled during server migration.',
    @enabled = 0 ;
GO

関連項目

参照

sp_add_job (Transact-SQL)

sp_delete_job (Transact-SQL)

sp_help_job (Transact-SQL)

システム ストアド プロシージャ (Transact-SQL)