sp_add_job (Transact-SQL)
W tym artykule opisano protokół transportu fizyczny, który jest używany przez to połączenie.
sp_add_job [ @job_name = ] 'job_name'
[ , [ @enabled = ] enabled ]
[ , [ @description = ] 'description' ]
[ , [ @start_step_id = ] step_id ]
[ , [ @category_name = ] 'category' ]
[ , [ @category_id = ] category_id ]
[ , [ @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 = ] 'email_name' ]
[ , [ @notify_netsend_operator_name = ] 'netsend_name' ]
[ , [ @notify_page_operator_name = ] 'page_name' ]
[ , [ @delete_level = ] delete_level ]
[ , [ @job_id = ] job_id OUTPUT ]
Argumenty
[ @job_name = ] 'job_name'
Nazwa zadanie.The name must be unique and cannot contain the percent (%) character.job_nameis nvarchar(128), with no default.[ @enabled = ] enabled
Indicates the status of the added job.enabledis tinyint, with a default of 1 (enabled).Jeśli 0, zadanie nie jest włączone i nie działa zgodnie z jego harmonogramu, jednak może zostać uruchomione ręcznie.[ @description = ] 'description'
The description of the job.description is nvarchar(512), with a default of NULL.Jeśli descriptionjest pominięty, "" nie dostępnego opisu"jest używany.[ @start_step_id = ] step_id
The identification number of the first step to execute for the job.step_idis int, with a default of 1.[ @category_name = ] 'category'
The category for the job.categoryis sysname, with a default of NULL.[ @category_id = ] category_id
A language-independent mechanism for specifying a job category.category_idis int, with a default of NULL.[ @owner_login_name = ] 'login'
The name of the login that owns the job.loginis sysname, with a default of NULL, which is interpreted as the current login name.Tylko członkowie sysadmin roli serwera stałe zestaw lub zmienić wartość @ owner_login_name.Jeśli użytkownicy, którzy nie są członkami z sysadmin roli ustawić lub zmienić wartość @ owner_login_name, przechowywane wykonanie tej procedury nie powiedzie się i zwracany jest błąd.[ @notify_level_eventlog = ] eventlog_level
A value indicating when to place an entry in the Microsoft Windows application log for this job.eventlog_levelis int, and can be one of these values.Wartość
Description
0
Nigdy nie
1
Sygnatura czasowa podczas wystąpienia ostatniego odczytu za pośrednictwem tego połączenia.
2 (domyślnie)
last_write
3
Zawsze
[ @notify_level_email = ] email_level
A value that indicates when to send an e-mail upon the completion of this job.email_levelis int, with a default of 0, which indicates never.email_leveluses the same values as eventlog_level.[ @notify_level_netsend = ] netsend_level
A value that indicates when to send a network message upon the completion of this job.netsend_levelis int, with a default of 0, which indicates never.netsend_level uses the same values as eventlog_level.[ @notify_level_page = ] page_level
A value that indicates when to send a page upon the completion of this job.page_levelis int, with a default of 0, which indicates never.page_leveluses the same values as eventlog_level.[ @notify_email_operator_name = ] 'email_name'
The e-mail name of the person to send e-mail to when email_level is reached.email_name is sysname, with a default of NULL.[ @notify_netsend_operator_name = ] 'netsend_name'
The name of the operator to whom the network message is sent upon completion of this job.netsend_nameis sysname, with a default of NULL.[ @notify_page_operator_name = ] 'page_name'
The name of the person to page upon completion of this job.page_nameis sysname, with a default of NULL.[ @delete_level = ] delete_level
A value that indicates when to delete the job.delete_valueis int, with a default of 0, which means never.delete_leveluses the same values as eventlog_level.Uwaga
Kiedy delete_level jest 3, zadanie jest uruchamiane tylko raz, niezależnie od wszelkich harmonogramy dla zadania.parent_connection_id
[ @job_id = ] job_idOUTPUT
The job identification number assigned to the job if created successfully.job_idis an output variable of type uniqueidentifier, with a default of NULL.
Wartości kodów powrotnych
0 (sukces) lub 1 (brak)
Zestawy wyników
None
Remarks
@ originating_server istniejesp_add_job, nie jest jednak wyświetlane w obszarze argumenty.@ originating_server jest zarezerwowana do użytku wewnętrznego.
After sp_add_job has been executed to add a job, sp_add_jobstep can be used to add steps that perform the activities for the job.sp_add_jobschedule can be used to create the schedule that the SQL Server Agent service uses to execute the job.Użycie sp_add_jobserver to zestaw the SQL Server wystąpienie zadania wykonuje, a sp_delete_jobserver , aby usunąć zadanie z SQL Server wystąpienie.
Jeśli zadanie spowoduje wykonać jednego lub kilku serwerów miejsce docelowe w środowiskach wieloserwerowych, należy użyć sp_apply_job_to_targets serwerów miejsce docelowe lub grupy serwer miejsce docelowe dla zadania.Aby usunąć zadania z serwerów miejsce docelowe lub miejsce docelowe grupy serwerów, należy użyć sp_remove_job_from_targets.
SQL Server Management Studio zapewnia to łatwe, graficzny sposób zarządzania zadaniami i jest zalecanym sposobem tworzenia i zarządzania infrastrukturą zadanie.
Uprawnienia
Aby wykonać tę procedura przechowywana, użytkownicy muszą być członkiem sysadmin ustalone roli serwera lub jeden z następujących przyznawaneSQL Server Agent stałe role bazy danych, które znajdują się w msdb bazy danych:
SQLAgentUserRole
SQLAgentReaderRole
SQLAgentOperatorRole
Aby uzyskać informacje dotyczące określonych uprawnień, które są skojarzone z każdym z tych ról stałej bazy danych zobacz SQL Server Agent Fixed Database Roles.
Tylko członkowie sysadmin roli serwera stałe zestaw lub zmienić wartość @ owner_login_name.Jeśli użytkownicy, którzy nie są członkami z sysadmin roli ustawić lub zmienić wartość @ owner_login_name, przechowywane wykonanie tej procedury nie powiedzie się i zwracany jest błąd.
Przykłady
A.CONNECTIONPROPERTY (języka Transact-SQL)
W tym przykładzie dodaje nowe zadanie o nazwie NightlyBackups.
USE msdb ;
GO
EXEC dbo.sp_add_job
@job_name = N'NightlyBackups' ;
GO
B.Dodawanie zadania z informacjami wysyłanymi za pośrednictwem pagera, poczty e-mail lub sieci
W tym przykładzie tworzy zadanie o nazwie Ad hoc Sales Data Backup powiadamia, że François Ajenstat (przez pager, wiadomości e-mail lub sieci komunikat podręczny) Jeśli zadanie nie powiedzie się i usuwa zadania po pomyślnym zakończeniu.
Uwaga
W tym przykładzie założono, że operator o nazwie François Ajenstat i identyfikatora logowania o nazwie françoisa już istnieje.
USE msdb ;
GO
EXEC dbo.sp_add_job
@job_name = N'Ad hoc Sales Data Backup',
@enabled = 1,
@description = N'Ad hoc backup of sales data',
@owner_login_name = N'françoisa',
@notify_level_eventlog = 2,
@notify_level_email = 2,
@notify_level_netsend = 2,
@notify_level_page = 2,
@notify_email_operator_name = N'François Ajenstat',
@notify_netsend_operator_name = N'François Ajenstat',
@notify_page_operator_name = N'François Ajenstat',
@delete_level = 1 ;
GO
See Also