Sdílet prostřednictvím


sp_update_job (Transact-SQL)

platí pro:SQL Serverazure SQL Managed Instance

Aktualizuje atributy existující úlohy vytvořené ve službě SQL Server Agent.

Transact-SQL konvence syntaxe

Syntaxe

sp_update_job
    [ [ @job_id = ] 'job_id' ]
    [ , [ @job_name = ] N'job_name' ]
    [ , [ @new_name = ] N'new_name' ]
    [ , [ @enabled = ] enabled ]
    [ , [ @description = ] N'description' ]
    [ , [ @start_step_id = ] start_step_id ]
    [ , [ @category_name = ] N'category_name' ]
    [ , [ @owner_login_name = ] N'owner_login_name' ]
    [ , [ @notify_level_eventlog = ] notify_level_eventlog ]
    [ , [ @notify_level_email = ] notify_level_email ]
    [ , [ @notify_level_netsend = ] notify_level_netsend ]
    [ , [ @notify_level_page = ] notify_level_page ]
    [ , [ @notify_email_operator_name = ] N'notify_email_operator_name' ]
    [ , [ @notify_netsend_operator_name = ] N'notify_netsend_operator_name' ]
    [ , [ @notify_page_operator_name = ] N'notify_page_operator_name' ]
    [ , [ @delete_level = ] delete_level ]
    [ , [ @automatic_post = ] automatic_post ]
[ ; ]

Arguments

[ @job_id = ] 'job_id'

Identifikační číslo práce, která má být aktualizována. @job_id je uniqueidentifier, s výchozím nastavením NULL.

Buď @job_id , nebo @job_name musí být specifikovány, ale ani jedno nelze specifikovat.

[ @job_name = ] N'job_name'

Název úlohy. @job_name je sysname s výchozím nastavením NULL.

Buď @job_id , nebo @job_name musí být specifikovány, ale ani jedno nelze specifikovat.

[ @new_name = ] N'new_name'

Nový název pro tu práci. @new_name je sysname s výchozím nastavením NULL.

[ @enabled = ] povoleno

Specifikuje, zda je úloha povolena (1) nebo není povolena (0). @enabled je tinyint, s výchozím nastavením NULL.

[ @description = ] N'popis"

Popis práce. @description je nvarchar(512), s výchozím hodnotou NULL.

[ @start_step_id = ] start_step_id

Identifikační číslo prvního kroku k provedení pro danou práci. @start_step_id je int, s výchozím nastavením NULL.

[ @category_name = ] N'category_name'

Kategorie práce. @category_name je sysname, s výchozím nastavením NULL.

[ @owner_login_name = ] N'owner_login_name'

Název přihlašovacího data, který vlastní práci. @owner_login_name je sysname s výchozím nastavením NULL. Pouze členové role správce pevného serveru mohou změnit vlastnictví práce.

[ @notify_level_eventlog = ] notify_level_eventlog

Specifikuje, kdy umístit položku do logu aplikace Microsoft Windows pro tuto úlohu. @notify_level_eventlog je int a může být jednou z těchto hodnot.

Hodnota Popis (akce)
0 Nikdy
1 Při úspěchu
2 Při selhání
3 Always

[ @notify_level_email = ] notify_level_email

Specifikuje, kdy má po dokončení této práce zasílat e-mail. @notify_level_email je int, s výchozím nastavením NULL. @notify_level_email používá stejné hodnoty jako @notify_level_eventlog.

[ @notify_level_netsend = ] notify_level_netsend

Specifikuje, kdy má po dokončení této úlohy odesílat síťovou zprávu. @notify_level_netsend je int, s výchozím nastavením NULL. @notify_level_netsend používá stejné hodnoty jako @notify_level_eventlog.

[ @notify_level_page = ] notify_level_page

Specifikuje, kdy má po dokončení této práce odesílat stránku na místě. @notify_level_page je int, s výchozím nastavením NULL. @notify_level_page používá stejné hodnoty jako @notify_level_eventlog.

[ @notify_email_operator_name = ] N'notify_email_operator_name'

Jméno operátora, kterému je e-mail odeslán při doručení email_level . @notify_email_operator_name je sysname s výchozím nastavením NULL.

[ @notify_netsend_operator_name = ] N'notify_netsend_operator_name'

Jméno operátora, kterému je síťová zpráva odeslána. @notify_netsend_operator_name je sysname s výchozím nastavením NULL.

[ @notify_page_operator_name = ] N'notify_page_operator_name'

Jméno operátora, kterému je stránka odeslána. @notify_page_operator_name je sysname s výchozím nastavením NULL.

[ @delete_level = ] delete_level

Specifikuje, kdy má být úkol smazán. @delete_level je int, s výchozím nastavením NULL. @delete_level používá stejné hodnoty jako @notify_level_eventlog.

[ @automatic_post = ] automatic_post

Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena.

Hodnoty návratového kódu

0 (úspěch) nebo 1 (selhání).

Poznámky

sp_update_job musí být spuštěna z databáze msdb .

sp_update_job mění pouze ta nastavení, pro která jsou dodána hodnota parametrů. Pokud je parametr vynechán, aktuální nastavení zůstává zachováno.

Tato uložená procedura sdílí název s sp_update_job podobným objektem pro službu Azure Elastic Jobs pro Azure SQL Database. Pro informace o verzi elastic jobs viz jobs.sp_update_job (Azure Elastic Jobs).

Povolení

Na tomto postupu můžete udělit EXECUTE oprávnění, ale tato oprávnění mohou být během upgradu SQL Serveru přepsána.

Ostatní uživatelé musí mít v databázi msdb přiděleny některé z následujících pevných databázových rolí SQL Server Agent:

  • SQLAgentUserRole
  • SQLAgentReaderRole
  • SQLAgentOperatorRole

Podrobnosti o oprávněních těchto rolí naleznete v SQL Server Agent Fixed Database Roles.

Pouze členové správce systému mohou tuto uloženou proceduru používat k úpravě atributů úloh, které vlastní jiní uživatelé.

Examples

Následující příklad mění název, popis a povolený stav úkolu NightlyBackups.

USE msdb;
GO

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