Notatka
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Dotyczy:SQL Server
Azure SQL Managed Instance
Aktualizuje atrybuty istniejącego zadania utworzonego w usłudze SQL Server Agent.
Transact-SQL konwencje składni
Składnia
dbo.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'
Numer identyfikacyjny zlecenia do aktualizacji.
@job_id jest unikalnym identyfikatorem, z domyślnym .NULL
Albo @job_id , albo @job_name muszą być określone, ale obie nie mogą być określone.
[ @job_name = ] N'job_name'
Nazwa zadania.
@job_name to nazwa systemu, z domyślnym .NULL
Albo @job_id , albo @job_name muszą być określone, ale obie nie mogą być określone.
[ @new_name = ] N'new_name'
Nowa nazwa tej pracy.
@new_name jest nazwą systemu z domyślnym .NULL
[ @enabled = ] włączone
Określa, czy zadanie jest włączone (1), czy nie (0).
@enabled jest tinyint, z domyślnym .NULL
[ @description = ] N'opis"
Opis pracy.
@description to nvarchar(512), z domyślnym obciążeniem NULL.
[ @start_step_id = ] start_step_id
Numer identyfikacyjny pierwszego kroku do wykonania zadania.
@start_step_id jest int, z domyślnym .NULL
[ @category_name = ] N'category_name'
Kategoria stanowiska.
@category_name jest nazwą systemu z domyślnym .NULL
[ @owner_login_name = ] N'owner_login_name'
Nazwa login-a, który jest właścicielem tej pracy.
@owner_login_name to nazwa systemu z domyślnym .NULL Tylko członkowie roli administratora systemu na stałym serwerze mogą zmienić właściciela pracy.
Warning
SQL Server Agent uruchamia Transact-SQL kroki pracy w kontekście bezpieczeństwa właściciela pracy. Jeśli zmienisz @owner_login_name, te kroki przechodzą pod uprawnieniami nowego właściciela.
[ @notify_level_eventlog = ] notify_level_eventlog
Określa, kiedy umieścić wpis w dzienniku aplikacji Microsoft Windows dla tego zadania. @notify_level_eventlog jest int i może być jedną z tych wartości.
| Wartość | Opis (akcja) |
|---|---|
0 |
Nigdy |
1 |
Po pomyślnych działaniach |
2 |
Po awarii |
3 |
Zawsze |
[ @notify_level_email = ] notify_level_email
Określa, kiedy wysłać e-mail po zakończeniu tej pracy.
@notify_level_email jest int, z domyślnym obciążeniem NULL.
@notify_level_email używa tych samych wartości co @notify_level_eventlog.
[ @notify_level_netsend = ] notify_level_netsend
Określa, kiedy wysłać wiadomość sieciową po zakończeniu tego zadania.
@notify_level_netsend jest int, z domyślnym obciążeniem NULL.
@notify_level_netsend używa tych samych wartości co @notify_level_eventlog.
[ @notify_level_page = ] notify_level_page
Określa, kiedy wysłać stronę po zakończeniu tego zadania.
@notify_level_page jest int, z domyślnym .NULL
@notify_level_page używa tych samych wartości co @notify_level_eventlog.
[ @notify_email_operator_name = ] N'notify_email_operator_name'
Nazwisko operatora, do którego e-mail jest wysyłany w momencie email_level osiągniętych.
@notify_email_operator_name to nazwa systemu, z domyślnym .NULL
[ @notify_netsend_operator_name = ] N'notify_netsend_operator_name'
Imię operatora, do którego wysyłana jest wiadomość sieciowa.
@notify_netsend_operator_name to nazwa systemu, z domyślnym .NULL
[ @notify_page_operator_name = ] N'notify_page_operator_name'
Imię operatora, do którego wysyłana jest strona.
@notify_page_operator_name to nazwa systemu, z domyślnym .NULL
[ @delete_level = ] delete_level
Określa, kiedy usunąć zadanie.
@delete_level jest int, z domyślnym obciążeniem NULL.
@delete_level używa tych samych wartości co @notify_level_eventlog.
[ @automatic_post = ] automatic_post
Zidentyfikowane tylko do celów informacyjnych. Niewspierane. Zgodność w przyszłości nie jest gwarantowana.
Zwracanie wartości kodu
0 (powodzenie) lub 1 (niepowodzenie).
Uwagi
sp_update_job musi być uruchamiany z bazy msdb danych.
sp_update_job zmienia tylko te ustawienia, dla których podane są wartości parametrów. Jeśli parametr zostanie pominięty, aktualne ustawienie pozostaje zachowane.
Ta procedura przechowywana dzieli nazwę z podobnym sp_update_job obiektem dla usługi Azure Elastic Jobs dla Azure SQL Database. Informacje o wersji elastic jobs można znaleźć w jobs.sp_update_job (Azure Elastic Jobs).
Permissions
Możesz przyznać EXECUTE uprawnienia tej procedurze, ale mogą one zostać nadpisane podczas aktualizacji SQL Server.
Inni użytkownicy muszą otrzymać jedną z następujących stałych ról msdb bazy danych SQL Server Agent:
- SQLAgentUserRole
- SQLAgentReaderRole
- SQLAgentOperatorRole
Szczegóły dotyczące uprawnień tych ról można znaleźć w sekcji SQL Server Agent Fixed Database Roles.
Tylko członkowie administratora systemu mogą używać tej procedury przechowywanej do edycji atrybutów zadań należących do innych użytkowników.
Warning
SQL Server Agent uruchamia Transact-SQL kroki pracy w kontekście bezpieczeństwa właściciela pracy. Jeśli zmienisz @owner_login_name, te kroki przechodzą pod uprawnieniami nowego właściciela.
Przykłady
Poniższy przykład zmienia nazwę, opis oraz status włączenia zadania 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