Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Şunlar için geçerlidir:SQL Server
Azure SQL Yönetilen Örneği
SQL Server Agent hizmetinde otomatik etkinlikler gerçekleştirmek için kullanılan bir işteki bir adımın ayarını değiştirir.
Transact-SQL söz dizimi kuralları
Sözdizimi
sp_update_jobstep
[ [ @job_id = ] 'job_id' ]
[ , [ @job_name = ] N'job_name' ]
, [ @step_id = ] step_id
[ , [ @step_name = ] N'step_name' ]
[ , [ @subsystem = ] N'subsystem' ]
[ , [ @command = ] N'command' ]
[ , [ @additional_parameters = ] N'additional_parameters' ]
[ , [ @cmdexec_success_code = ] cmdexec_success_code ]
[ , [ @on_success_action = ] on_success_action ]
[ , [ @on_success_step_id = ] on_success_step_id ]
[ , [ @on_fail_action = ] on_fail_action ]
[ , [ @on_fail_step_id = ] on_fail_step_id ]
[ , [ @server = ] N'server' ]
[ , [ @database_name = ] N'database_name' ]
[ , [ @database_user_name = ] N'database_user_name' ]
[ , [ @retry_attempts = ] retry_attempts ]
[ , [ @retry_interval = ] retry_interval ]
[ , [ @os_run_priority = ] os_run_priority ]
[ , [ @output_file_name = ] N'output_file_name' ]
[ , [ @flags = ] flags ]
[ , [ @proxy_id = ] proxy_id ]
[ , [ @proxy_name = ] N'proxy_name' ]
[ ; ]
Bağımsız değişken
[ @job_id = ] 'job_id'
Adımın ait olduğu işin kimlik numarası.
@job_id veya @job_name belirtilmelidir, ancak her ikisi de belirtilemiyor.
[ @job_name = ] N'job_name'
Adımın ait olduğu işin adı.
@job_id veya @job_name belirtilmelidir, ancak her ikisi de belirtilemiyor.
[ @step_id = ] step_id
Değiştirilecek iş adımının kimlik numarası.
[ @step_name = ] N'step_name'
Adım için yeni bir ad.
[ @subsystem = ] N'alt sistem'
SQL Server Aracısı tarafından @commandyürütmek için kullanılan alt sistem.
@subsystemnvarchar(40)NULLvarsayılan değeridir.
[ @command = ] N'komutu'
@subsystemaracılığıyla yürütülecek komutlar.
[ @additional_parameters = ] N'additional_parameters'
Yalnızca bilgilendirme amacıyla tanımlanır. Desteklenmez. Gelecekteki uyumluluk garanti edilmemektedir.
[ @cmdexec_success_code = ] cmdexec_success_code
CmdExec alt sistem komutu tarafından döndürülen değer, komutun başarıyla yürütüldüğünü.
[ @on_success_action = ] on_success_action
Adım başarılı olursa gerçekleştirilecek eylem.
| Değer | Açıklama (eylem) |
|---|---|
1 |
Başarılı bir şekilde çıkın |
2 |
Hatayla çık |
3 |
Sonraki adıma git |
4 |
@on_success_step_id adıma gidin |
[ @on_success_step_id = ] on_success_step_id
Adım başarılı olursa ve @on_success_action4bu işte yürütülecek adımın kimlik numarasıdır.
[ @on_fail_action = ] on_fail_action
Adım başarısız olursa gerçekleştirilecek eylem.
| Değer | Açıklama (eylem) |
|---|---|
1 |
Başarılı bir şekilde çıkın |
2 |
Hatayla çık |
3 |
Sonraki adıma git |
4 |
@on_fail_step_id adıma gidin |
[ @on_fail_step_id = ] on_fail_step_id
Adım başarısız olursa ve @on_fail_action4ise bu işte yürütülecek adımın kimlik numarası.
[ @server = ] N'sunucusu'
Yalnızca bilgilendirme amacıyla tanımlanır. Desteklenmez. Gelecekteki uyumluluk garanti edilmemektedir.
[ @database_name = ] N'database_name'
Transact-SQL adımının yürütüldiği veritabanının adı. []) içine alınmış adlara izin verilmez.
[ @database_user_name = ] N'database_user_name'
bir Transact-SQL adımı yürütürken kullanılacak veritabanı kullanıcısının adı.
[ @retry_attempts = ] retry_attempts
Bu adım başarısız olursa yeniden deneme denemesi sayısı.
[ @retry_interval = ] retry_interval
Yeniden deneme girişimleri arasındaki dakika cinsinden süre.
[ @os_run_priority = ] os_run_priority
Yalnızca bilgilendirme amacıyla tanımlanır. Desteklenmez. Gelecekteki uyumluluk garanti edilmemektedir.
[ @output_file_name = ] N'output_file_name'
Bu adımın çıktısının kaydedildiği dosyanın adı.
@output_file_namenvarchar(200)NULLvarsayılan değeridir. Bu parametre yalnızca Transact-SQL veya CmdExec alt sistemlerinde çalışan komutlarla geçerlidir.
@output_file_name yeniden NULLolarak ayarlamak için, @output_file_name boş bir dizeye veya boş karakter dizesine ayarlamanız gerekir, ancak CHAR(32) işlevini kullanamazsınız.
Örneğin, bu bağımsız değişkeni aşağıdaki gibi boş bir dize olarak ayarlayın:
@output_file_name = ' '
[ @flags = ] bayrakları
Davranışı denetleyebilen bir seçenek.
| Değer | Açıklama | Yorum |
|---|---|---|
0 (varsayılan) |
Çıktı dosyasının üzerine yazma | |
2 |
Çıktı dosyasına ekle | |
4 |
Transact-SQL iş adımı çıkışını adım geçmişine yazma | Türe Uygula: Transact-SQL, Analysis Services Komutu ve Analysis Query |
8 |
Tabloya günlük yazma (var olan geçmişin üzerine yazma) | |
16 |
Tabloya günlük yazma (var olan geçmişe ekleme) | |
32 |
Adım geçmişine SSIS/CmdExe/PowerShell iş adımı çıkışı yazma | Türe Uygula: CmdExe, PowerShell ve Integration Services Paketi |
[ @proxy_id = ] proxy_id
İş adımının çalıştığı proxy'nin kimlik numarası.
@proxy_idint, varsayılan olarak NULL. Hiçbir @proxy_id belirtilmezse, @proxy_name belirtilmez ve @database_user_name belirtilmezse, iş adımı SQL Server Aracısı için hizmet hesabı olarak çalışır.
[ @proxy_name = ] N'proxy_name'
İş adımının çalıştığı proxy'nin adı.
Dönüş kodu değerleri
0 (başarı) veya 1 (başarısızlık).
Açıklamalar
sp_update_jobstep
msdb veritabanından çalıştırılmalıdır.
bir iş adımının güncelleştirilmesi, iş sürüm numarasını artırır.
Bu saklı yordam,
İzinler
Bu yordamda EXECUTE izinler vekleyebilirsiniz, ancak bu izinler SQL Server yükseltmesi sırasında geçersiz kılınabilir.
Diğer kullanıcılara msdb veritabanında aşağıdaki SQL Server Aracısı sabit veritabanı rollerinden biri verilmelidir:
- SQLAgentUserRole
- SQLAgentReaderRole
- SQLAgentOperatorRole
Bu rollerin izinleri hakkında ayrıntılı bilgi için bkz. SQL Server Agent Sabit Veritabanı Rolleri.
Yalnızca sysadmin üyeleri, başka bir kullanıcının sahip olduğu bir işin iş adımını güncelleştirebilir.
İş adımı bir ara sunucuya erişim gerektiriyorsa, iş adımının oluşturucusunun iş adımı için ara sunucuya erişimi olmalıdır. Transact-SQL dışındaki tüm alt sistemler bir proxy hesabı gerektirir. sysadmin üyeleri tüm proxy'lere erişebilir ve ara sunucu için SQL Server Aracısı hizmet hesabını kullanabilir.
Örnekler
Aşağıdaki örnek, Weekly Sales Data Backup işinin ilk adımı için yeniden deneme denemelerinin sayısını değiştirir. Bu örneği çalıştırdıktan sonra yeniden deneme denemelerinin sayısı 10.
USE msdb;
GO
EXECUTE dbo.sp_update_jobstep
@job_name = N'Weekly Sales Data Backup',
@step_id = 1,
@retry_attempts = 10;
GO
İlgili içerik
- İşleri görüntüleme veya değiştirme
- sp_delete_jobstep (Transact-SQL)
- sp_help_jobstep (Transact-SQL)
- SQL Server Agent saklı yordamlarını (Transact-SQL)