Aracılığıyla paylaş


sp_update_jobstep (Transact-SQL)

Bir adımda otomatik etkinlikleri gerçekleştirmek için kullanılan bir iş ayarını değiştirir.

Topic link iconTransact-SQL sözdizimi kuralları

sp_update_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 =] success_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' } 

Bağımsız değişkenler

  • [ @job_id =] job_id
    The identification number of the job to which the step belongs.job_idis uniqueidentifier, with a default of NULL.Ya dajob_idorjob_namebelirtilmiş olması gerekir, ancak her ikisi de belirtilemiyor.

  • [ @job_name =] 'job_name'
    The name of the job to which the step belongs.job_nameis sysname, with a default of NULL.Ya dajob_idorjob_namebelirtilmiş olması gerekir, ancak her ikisi de belirtilemiyor.

  • [ @step_id =] step_id
    Değiştirilecek kimlik numarası iş adımı.This number cannot be changed.step_idis int, with no default.

  • [ @step_name =] 'step_name'
    Is a new name for the step.step_nameis sysname, with a default of NULL.

  • [ @subsystem =] 'subsystem'
    The subsystem used by Microsoft SQL Server Agent to execute command.subsystem is nvarchar(40), with a default of NULL.

  • [ @command =] 'command'
    The command(s) to be executed through subsystem.command is nvarchar(max), with a default of NULL.

  • [ @additional_parameters =] 'parameters'
    Identified for informational purposes only. Not supported. Future compatibility is not guaranteed.

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

  • [ @on_success_action =] success_action
    Adım başarılı olursa gerçekleştirilecek eylem.success_actionistinyint, NULL, varsayılan olan ve bu değerleri. olabilir

    Değer

    Açıklama (eylem)

    1

    Başarı ile çıkın.

    2

    Hatayla çıkın.

    3

    Bir sonraki adıma geçin.

    4

    Adıma success_step_id.

  • [ @on_success_step_id =] success_step_id
    The identification number of the step in this job to execute if step succeeds and success_action is 4.success_step_id is int, with a default of NULL.

  • [ @on_fail_action =] fail_action
    The action to perform if the step fails.fail_action is tinyint, with a default of NULL and can have one of these values.

    Değer

    Açıklama (eylem)

    1

    Başarı ile çıkın.

    2

    Hatayla çıkın.

    3

    Bir sonraki adıma geçin.

    4

    Adıma gidinfail_step_id.

  • [ @on_fail_step_id =] fail_step_id
    The identification number of the step in this job to execute if the step fails and fail_action is 4.fail_step_id is int, with a default of NULL.

  • [ @server =] 'server'
    Identified for informational purposes only. Not supported. Future compatibility is not guaranteed.serverisnvarchar(128), varsayılan null değeri ile

  • [ @database_name =] 'database'
    The name of the database in which to execute a Transact-SQL step.databaseis sysname.Köşeli ayraçlar ([]) içine alınır adı verilir.NULL varsayılan değerdir.

  • [ @database_user_name =] 'user'
    The name of the user account to use when executing a Transact-SQL step.useris sysname, with a default of NULL.

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

  • [ @retry_interval =] retry_interval
    The amount of time in minutes between retry attempts.retry_interval is int, with a default of NULL.

  • [ @os_run_priority =] run_priority
    Identified for informational purposes only. Not supported. Future compatibility is not guaranteed.

  • [ @output_file_name =] 'file_name'
    The name of the file in which the output of this step is saved.file_name is nvarchar(200), with a default of NULL.Bu parametre, yalnızca geçerli komutlar çalışanTransact-SQLCmdExec alt sistemler.

    İçin küme output_file_name NULL olarak yedekleyin, küme gerekiroutput_file_nameiçin boş bir dize (' ') veya bir dizi boş karakterler, ancak kullanılamaz CHAR(32)işlev.Örneğin, bu bağımsız değişkeni boş bir dizeye gibi ayarlayın:

    output_file_name = ' '

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

    Değer

    Açıklama

    0 (Varsayılan)

    Çıktı dosyasının üzerine yaz.

    2

    Çıktı dosyasına ekleme

    4

    Transact-SQL iş adım çıktı adım geçmişine yazma

    8

    Günlüğe yazma tablo (varolan geçmiş üzerine yaz)

    16

    Tabloya yazma günlük (için varolan Geçmiş sona Ekle)

  • [ @ 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.Yokproxy_idbelirtilen yokproxy_namebelirtilen ve hiçbiruser_namebelirtilen, iş adımı çalışan için hizmet hesabı olarakSQL ServerAracı.

  • [ @ 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.Yokproxy_idbelirtilen yokproxy_namebelirtilen ve hiçbiruser_namebelirtilen, iş adımı çalışan için hizmet hesabı olarakSQL ServerAracı.

Dönüş Kodu Değerleri

0 (başarılı) veya 1 (hata)

Remarks

sp_update_jobstep çalıştırılmalıdır msdb veritabanını.

Bir iş adım aralıklarla iş sürüm numarasını güncelleştiriliyor.

İzinler

Varsayılan olarak, üye sysadmin sabit sunucu rolü Bu saklı yordamı çalıştırabilirsiniz.Aşağıdakilerden birini diğer kullanıcılara verilmelidir SQL Server Veritabanı rollerini sabit Aracısı msdb veritabanı:

  • SQLAgentUserRole

  • SQLAgentReaderRole

  • SQLAgentOperatorRole

Bu roller, izinler hakkında daha fazla bilgi için bkz: SQL Server Agent Database Roles sabit.

Yalnızca üyeleriSistem Yöneticisi olduğu başka bir kullanıcının. bir iş adımı güncelleştirebilirsiniz.

İşlem adımı proxy erişimi gerektiriyorsa, iş adımı oluşturan iş adımı için proxy erişimi olması gerekir.Tüm alt sistemler, Transact-SQL dışında bir yetkili hesap gerekir.ÜyeleriSistem Yöneticisi tüm proxy erişimi ve kullanabileceğiniz SQL ServerAgent hizmet hesabı proxy.

Örnekler

Aşağıdaki örnekte ilk adım için yeniden deneme girişimlerinin sayısını değiştirirWeekly Sales Data Backupiş.Bu örnekte, çalıştırdıktan sonra yeniden deneme girişimi sayısı değil.10.

USE msdb ;
GO

EXEC dbo.sp_update_jobstep
    @job_name = N'Weekly Sales Data Backup',
    @step_id = 1,
    @retry_attempts = 10 ;
GO