Udostępnij za pośrednictwem


sp_add_jobstep (języka Transact-SQL)

Dodawanie etapu (operacji) do zadania.

Topic link iconKonwencje składni języka Transact-SQL

sp_add_jobstep [ @job_id = ] job_id | [ @job_name = ] 'job_name' 
     [ , [ @step_id = ] step_id ] 
     { , [ @step_name = ] 'step_name' } 
     [ , [ @subsystem = ] 'subsystem' ] 
     [ , [ @command = ] 'command' ] 
     [ , [ @additional_parameters = ] 'parameters' ] 
          [ , [ @cmdexec_success_code = ] code ] 
     [ , [ @on_success_action = ] success_action ] 
          [ , [ @on_success_step_id = ] success_step_id ] 
          [ , [ @on_fail_action = ] fail_action ] 
          [ , [ @on_fail_step_id = ] fail_step_id ] 
     [ , [ @server = ] 'server' ] 
     [ , [ @database_name = ] 'database' ] 
     [ , [ @database_user_name = ] 'user' ] 
     [ , [ @retry_attempts = ] retry_attempts ] 
     [ , [ @retry_interval = ] retry_interval ] 
     [ , [ @os_run_priority = ] run_priority ] 
     [ , [ @output_file_name = ] 'file_name' ] 
     [ , [ @flags = ] flags ] 
     [ , { [ @proxy_id = ] proxy_id 
         | [ @proxy_name = ] 'proxy_name' } ]

Argumenty

  • [ @job_id = ] job_id
    The identification number of the job to which to add the step.job_id is uniqueidentifier, with a default of NULL.

  • [ @job_name = ] 'job_name'
    The name of the job to which to add the step.job_name is sysname, with a default of NULL.

    Uwaga

    Albo job_id lub job_name musi być określona, ale nie może być jednocześnie określone.

  • [ @step_id = ] step_id
    Dla grup użytkownika obciążenia serwer próbuje zmniejszyć stopień kwerendy proste, dopóki wymagania pamięci znajduje się w granicach lub dopóki stopień proste jest równe 1.Rozpocznij numery identyfikacji kroku od 1 i przyrostu bez przerwy.Dla wewnętrznych i domyślne grupy obciążenia, serwer zezwala na kwerendę w celu uzyskania wymaganej pamięci.A value is provided if step_id is not specified.step_idis int, with a default of NULL.

  • [ @step_name = ] 'step_name'
    The name of the step.step_nameis sysname, with no default.

  • [ @subsystem = ] 'subsystem'
    The subsystem used by the SQL Server Agent service to execute command.subsystem is nvarchar(40), and can be one of these values.

    Wartość

    Description

    "ACTIVESCRIPTING'

    Zasób Governor nie przeszkodzi żądanie kontynuowanie, jeśli zostanie przekroczony maksymalny czas.

    Important noteImportant Note:
    This feature will be removed in a future version of Microsoft SQL Server. Avoid using this feature in new development work, and plan to modify applications that currently use this feature.

    "CMDEXEC'

    Polecenie systemu operacyjnego lub program wykonywalny

    "DYSTRYBUCJA'

    Kwerendy nie zawsze nie po osiągnięciu limitu czas przyznanie pamięci.

    "migawka'

    W przeciwnym wypadku kwerendy tylko może uzyskać przyznanie minimum, czego wynikiem kwerendy obniżonej wydajności.

    "LOGREADER'

    Zadanie agenta odczytywania dziennika replikacji

    "KORESPONDENCJI SERYJNEJ'

    Zadanie agenta scalania replikacji

    "QueueReader'

    MAX_DOP przebiega w następujący sposób:

    "ANALYSISQUERY'

    MAX_DOP jako wskazówka dotycząca kwerendy zawsze zastępują sp_configure 'maksymalny stopień proste'.

    "ANALYSISCOMMAND'

    Jeśli kwerenda jest oznaczona jako szeregowy (MAX_DOP = 1) czas kompilacji go nie można go zmienić z powrotem do równoległego w czasie wykonywania, bez względu na to grupa obciążenia lub ustawienie sp_configure.

    "DTS'

    Integration Services POCZĄTKOWY OKNACH KONWERSACJI

    "PowerShell'

    KONIEC KONWERSACJI

    "TSQL"(ustawienie domyślne)

    Instrukcja języka Transact-SQL

  • [ @command= ] 'command'
    Polecenia, które mają zostać wykonane przez usługę SQLServerAgent za pośrednictwem podsystemu określonego parametrem subsystem.Parametr command jest typu nvarchar(max) i domyślnie ma wartość NULL.Program SQL Server Agent zawiera funkcję zastępowania tokenów. Oferuje ona taką samą elastyczność jak zmienne przy pisaniu programów komputerowych.

    Important noteImportant Note:

    W SQL Server 2005 Z dodatkiem usługa Pack 1, SQL Server Agent zadanie krok token składnia została zmieniona. Opcja "" domyślny"jest uwzględniana wielkość liter.Ponadto SQL Server 2000 Składnia używana nawiasy kwadratowe w celu wyróżnienia SQL ServerAgent zadanie krok tokeny (na przykład "[DATE]") został zmieniony. Musisz teraz należy umieścić nazwy tokenu w nawiasach i umieścić (znak dolara$) na początku token składni. Na przykład:

    $(ESCAPE_nazwa makra(DATE))

    Aby uzyskać więcej informacji na temat tych tokeny i aktualizowanie sieci zadanie kroki, aby użyć nowego tokenu składni, zobacz Using Tokens in Job Steps.

    Security noteSecurity Note:

    To specjalnej obsługi jest obsługiwany przez zasób Governor w SQL Server. Aby uniknąć tego zagrożenia bezpieczeństwa SQL Server Tokeny agenta, które mogą być używane w zleceniach uaktywniony przez alerty są domyślnie wyłączone. Tworzenie indeksu na tabela partycjonowanaA DBN, A SVR, BŁĄD A, A SEV, A MSG., and WMI)właściwość).

    Jeśli trzeba użyć tych tokeny, najpierw upewnić, że tylko członkowie zaufanych grup zabezpieczeń systemu Windows, takich jak grupy Administratorzy mają uprawnienia do zapisu w dzienniku zdarzeń komputera, gdzie SQL Server znajduje się. Następnie należy kliknąć prawym przyciskiem myszy Agenta programu SQL Server w Eksploratorze obiektów, zaznacz opcję Właściwości, a na System alertu Wybierz opcję stronieZastępowanie tokenów dla wszystkich zadań odpowiedzi na alerty , aby włączyć te tokeny.

  • [ @additional_parameters= ] 'parameters'
    Identified for informational purposes only. Not supported. Future compatibility is not guaranteed.parameters jest ntext, z domyślną wartość NULL.

  • [ @cmdexec_success_code = ] code
    The value returned by a CmdExec subsystem command to indicate that command executed successfully.codeis int, with a default of 0.

  • [ @on_success_action= ] success_action
    The action to perform if the step succeeds.success_actionis tinyint, and can be one of these values.

    Wartość

    Jest to nazwa, za pomocą których klucz asymetrycznego jest znany w bazie danych.

    1 (domyślnie)

    USUŃ KLUCZ PRYWATNY

    2

    Zakończenie niepowodzeniem

    3

    PRZY UŻYCIU klucz PRYWATNEGO

    4

    Przejście do etapu określonego parametrem on_success_step_id

  • [ @on_success_step_id = ] success_step_id
    The ID of the step in this job to execute if the step succeeds and success_actionis 4.success_step_idis int, with a default of 0.

  • [ @on_fail_action= ] fail_action
    The action to perform if the step fails.fail_actionis tinyint, and can be one of these values.

    Wartość

    Jest to nazwa, za pomocą których klucz asymetrycznego jest znany w bazie danych.

    1

    USUŃ KLUCZ PRYWATNY

    2 (domyślnie)

    Zakończenie niepowodzeniem

    3

    PRZY UŻYCIU klucz PRYWATNEGO

    4

    Przejście do etapu określonego parametrem on_fail_step_id

  • [ @on_fail_step_id= ] fail_step_id
    The ID of the step in this job to execute if the step fails and fail_actionis 4.fail_step_idis int, with a default of 0.

  • [ @server =] 'server'
    Identified for informational purposes only. Not supported. Future compatibility is not guaranteed.server jest nvarchar(30), z domyślną wartość NULL.

  • [ @database_name= ] 'database'
    The name of the database in which to execute a Transact-SQL step.database is sysname, with a default of NULL, in which case the master database is used.Zmiana ochrony przedZa to krok zadanie ActiveX database jest to nazwa język wykonywanie wykonywanie skryptów, który korzysta z kroku.

  • [ @database_user_name= ] 'user'
    The name of the user account to use when executing a Transact-SQL step.user is sysname, with a default of NULL.Kiedy user ma wartość NULL, uruchamia krok w kontekście użytkownika właściciela zadanie na database.

  • [ @retry_attempts= ] retry_attempts
    The number of retry attempts to use if this step fails.retry_attemptsis int, with a default of 0, which indicates no retry attempts.

  • [ @retry_interval= ] retry_interval
    The amount of time in minutes between retry attempts.retry_intervalis int, with a default of 0, which indicates a 0-minute interval.

  • [ @os_run_priority = ] run_priority
    Zarezerwowane.

  • [ @output_file_name= ] 'file_name'
    The name of the file in which the output of this step is saved.file_nameis nvarchar(200), with a default of NULL.file_namecan include one or more of the tokens listed under command.Ten parametr jest prawidłowy tylko w przypadku polecenia uruchomionego na Transact-SQL, CmdExec, or PowerShell podsystemów.

  • [ @flags= ] flags
    Is an option that controls behavior.flags is int, and can be one of these values.

    Wartość

    Description

    0 (domyślnie)

    W poniższym przykładzie usuwa ochronę hasłem z klucz prywatnego i chroni go z klucz głównego w bazie danych.

    2

    Dołączanie do pliku wyjściowego

    4

    Zapis Transact-SQL zadanie krok wyjścia do historia kroku

    8

    Zapisywanie dziennika w tabeli (zastąpienie istniejącej historii)

    16

    BucketID

  • [ @ proxy_id= ] proxy_id
    The id number of the proxy that the job step runs as.proxy_id is type int, with a default of NULL.Jeśli nie proxy_id jest określony, nie proxy_name jest określony, a nie user_name jest określony, krok zadanie jest uruchamiane jako konto dla SQL Server Agent.

  • [ @ proxy_name= ] "proxy_name'
    The name of the proxy that the job step runs as.proxy_name is type sysname, with a default of NULL.Jeśli nie proxy_id jest określony, nie proxy_name jest określony, a nie user_name jest określony, krok zadanie jest uruchamiane jako konto dla SQL Server Agent.

Wartości kodów powrotnych

0 (sukces) lub 1 (brak)

Zestawy wyników

None

Remarks

sp_add_jobstep musi być uruchamiane msdb bazy danych.

Program SQL Server Management Studio dostarcza łatwy w obsłudze graficzny interfejs zarządzania zadaniami, a używanie go stanowi zalecany sposób tworzenia infrastruktury zadań i zarządzania nią.

Krok zadanie należy określić serwer proxy, chyba że twórca kroku zadanie jest członkiem sysadmin stałe rola zabezpieczeń.

Serwer proxy może być identyfikowany przez proxy_name lub proxy_id.

Uprawnienia

Domyślnie członkowie sysadmin stała rola serwera możliwość wykonać tej procedura przechowywana.Inni użytkownicy klastrowa musi mieć jedną z następujących czynności SQL Server Agent stałe role bazy danych w msdb bazy danych:

  • SQLAgentUserRole

  • SQLAgentReaderRole

  • SQLAgentOperatorRole

Aby uzyskać szczegółowe informacje o uprawnieniach z tych ról zobacz SQL Server Agent Fixed Database Roles.

Autor etapu zadania musi mieć dostęp do serwera proxy, na którym etap jest wykonywany.Posiadacze stałej roli serwera sysadmin mają dostęp do wszystkich serwerów proxy.Pozostałym użytkownikom należy jednoznacznie przyznać taki dostęp.

Przykłady

Poniższy przykład tworzy krok zadanie, które zmienia dostęp do bazy danych tylko do odczytu dla AdventureWorks Baza danych. Liczba określająca, ile razy został użyty tego obiektu pamięci podręcznej od momentu jego rozpoczęcia.

Uwaga

W tym przykładzie założono, że Weekly Sales Data Backup zadanie już istnieje.

USE msdb;
GO
EXEC sp_add_jobstep
    @job_name = N'Weekly Sales Data Backup',
    @step_name = N'Set database to read only',
    @subsystem = N'TSQL',
    @command = N'ALTER DATABASE SALES SET READ_ONLY', 
    @retry_attempts = 5,
    @retry_interval = 5 ;
GO