Aracılığıyla paylaş


sp_help_job (Transact-SQL)

Şunlar için geçerlidir: SQL Server

SQL Server Agent tarafından SQL Server'da otomatik faaliyetler gerçekleştirmek için kullanılan işler hakkında bilgi döndürür.

Transact-SQL söz dizimi kuralları

Sözdizimi

sp_help_job
    [ [ @job_id = ] 'job_id' ]
    [ , [ @job_name = ] N'job_name' ]
    [ , [ @job_aspect = ] 'job_aspect' ]
    [ , [ @job_type = ] 'job_type' ]
    [ , [ @owner_login_name = ] N'owner_login_name' ]
    [ , [ @subsystem = ] N'subsystem' ]
    [ , [ @category_name = ] N'category_name' ]
    [ , [ @enabled = ] enabled ]
    [ , [ @execution_status = ] execution_status ]
    [ , [ @date_comparator = ] 'date_comparator' ]
    [ , [ @date_created = ] date_created ]
    [ , [ @date_last_modified = ] date_last_modified ]
    [ , [ @description = ] N'description' ]
[ ; ]

Arguments

[ @job_id = ] 'job_id'

İş kimlik numarası. @job_iduniqueidentifier'dır ve varsayılan olarak ' NULLdir.

Belirli bir işi görebilmek için @job_id veya @job_name belirtilmelidir. Tüm işlerle ilgili bilgileri iade etmek için hem @job_id hem de @job_name göndermeyi unutmayın.

[ @job_name = ] N'job_name'

İşin adı. @job_namesysname'dir ve varsayılan olarak .NULL

Belirli bir işi görebilmek için @job_id veya @job_name belirtilmelidir. Tüm işlerle ilgili bilgileri iade etmek için hem @job_id hem de @job_name göndermeyi unutmayın.

[ @job_aspect = ] 'job_aspect'

Gösterilecek iş özniteliği. @job_aspectvarchar(9)'dur ve bu değerlerden biri olabilir.

Değer Description
ALL İş yönü bilgileri
JOB İş bilgileri
SCHEDULES Takvim bilgileri
STEPS İş adım bilgisi
TARGETS Hedef bilgileri

[ @job_type = ] 'job_type'

Rapora dahil edilecek iş türleri. @job_typevarchar(12)'dir ve varsayılan olarak .NULL @job_type olabilir LOCAL ya da MULTI-SERVER.

[ @owner_login_name = ] N'owner_login_name'

İşin sahibinin giriş adı. @owner_login_namesysname'dir ve varsayılan olarak .NULL

[ @subsystem = ] N'alt sistem'

Alt sistemin adı. @subsystemnvarchar(40)'dır, varsayılan NULLolarak .

[ @category_name = ] N'category_name'

Kategorinin adı. @category_namesysname'dir, varsayılan olarak .NULL

[ @enabled = ] etkinleştirildi

Etkin işler mi yoksa devre dışı bırakılmış işler için de bilginin gösterilip gösterilmediğini gösteren bir sayı. @enabledtinyint'tir, varsayılan olarak .NULL

  • 1 Etkinleştirilmiş işleri gösterir.
  • 0 Engelli işleri gösterir.

[ @execution_status = ] execution_status

İşlerin uygulama durumu. @execution_statusint'tir ve bu değerlerden biri olabilir.

Değer Description
0 Sadece boş olmayan veya askıya alınmayan işleri geri getirir.
1 Yürütme.
2 İplik bekliyorum.
3 Denemeler arasında.
4 Aylak.
5 Askıya.
7 Tamamlama işlemlerini yapmak.

[ @date_comparator = ] 'date_comparator'

@date_created ve @date_last_modified karşılaştırmalarında kullanılacak karşılaştırma operatörü. @date_comparatorchar(1)'dir ve , <, veya >olabilir=.

[ @date_created = ] date_created

İşin oluşturulduğu tarih. @date_createddatetime'dır, varsayılan olarak .NULL

[ @date_last_modified = ] date_last_modified

İşin son değiştirildiği tarih. @date_last_modified , tarih saatidir, varsayılan NULLolarak .

[ @description = ] N'description'

İşin tanımı. @descriptionnvarchar(512)'dir ve varsayılan olarak .NULL @description desen eşleştirme için joker karakterleri de içerebilir.

Dönüş kodu değerleri

0 (başarı) veya 1 (başarısızlık).

Sonuç kümesi

Eğer argüman belirtilmediyse, sp_help_job bu sonuç kümesi döner.

Sütun adı Veri türü Description
job_id uniqueidentifier Görevin benzersiz ID'si.
originating_server nvarchar(30) İşin geldiği sunucunun adı.
name sysname İşin adı.
enabled tinyint İşin etkin olup olmadığını gösterir, böylece çalıştırılabilir.
description nvarchar(512) İşin tanımı.
start_step_id int İşin başlatılması gereken adımın kimliği.
category sysname İş kategorisi.
owner sysname İş sahibi.
notify_level_eventlog int Bir bildirim olayının Microsoft Windows uygulama kaydına kaydedilmesi gereken koşulları gösteren bir bitmask. Bu değerlerden biri olabilir:

0 = Asla
1 = Bir iş başarılı olduğunda
2 = İş başarısız olduğunda
3 = İş tamamlandığında (iş sonucu ne olursa olsun)
notify_level_email int Bir iş tamamlandığında bildirim e-postasının gönderilmesi gereken koşulları belirten bir bitmask. Olası değerler için notify_level_eventlogolanlarla aynıdır.
notify_level_netsend int Bir iş tamamlandığında ağ mesajının gönderilmesi gereken koşulları gösteren bir bitmask. Olası değerler için notify_level_eventlogolanlarla aynıdır.
notify_level_page int Bir iş tamamlandığında sayfanın gönderilmesi gereken koşulları belirten bir bitmask. Olası değerler için notify_level_eventlogolanlarla aynıdır.
notify_email_operator sysname Operatörün e-posta adı, bildirimde bulunun.
notify_netsend_operator sysname Ağ mesajı gönderirken kullanılan bilgisayarın veya kullanıcının adı.
notify_page_operator sysname Sayfa gönderirken kullanılan bilgisayar veya kullanıcının adı.
delete_level int Bir iş tamamlandığında işin silinmesi gereken koşulları gösteren bir bitmask. Olası değerler için notify_level_eventlogolanlarla aynıdır.
date_created datetime İşin oluşturulma tarihi.
date_modified datetime İşin son değiştirildiği tarih.
version_number int İşin versiyonu (iş her değiştirildiğinde otomatik olarak güncellenir).
last_run_date int İşin en son yürütme tarihini belirt.
last_run_time int İşin en son başlatma zamanı geldi.
last_run_outcome int Son çalıştırıldığında işin sonucu:

0 = Başarısız oldu
1 = Başarılı oldu
3 = İptal edildi
5 = Bilinmiyor
next_run_date int İşin bir sonraki tarihini göster.
next_run_time int İşin sıradaki çalışma saati.
next_run_schedule_id int Bir sonraki çalışma programının kimlik numarası.
current_execution_status int Mevcut uygulama durumu:

1 = Yürütülüyor
2 = İplik Beklemek
3 = Denemeler arasında
4 = Boşta
5 = Askıya Alındı
6 = Modası geçmiş
7 = PerformansTamamlamaEylemler
current_execution_step sysname İşin mevcut uygulama adımı.
current_retry_attempt int Eğer iş çalışıyorsa ve adım tekrar denendiyse, bu mevcut tekrar deneme denemesidir.
has_step int İşin iş aşama sayısı.
has_schedule int İşin iş programı sayısı.
has_target int İşin hedef sunucu sayısı.
type int İşin türü.

1 = Yerel iş.
2 = Çok sunuculu iş.
0 = Job'un hedef sunucusu yok.

Eğer @job_id veya @job_name belirtilirse, sp_help_job iş adımları, iş zamanlamaları ve iş hedef sunucuları için bu ek sonuç setlerini döndürür.

Bu, iş adımları için sonuç setidir.

Sütun adı Veri türü Description
step_id int Bu iş için adım için benzersiz tanımlayıcı.
step_name sysname Adımın adı.
subsystem nvarchar(40) Adım komutunun yürütüleceği alt sistem.
command nvarchar(3200) Komut uygula.
flags nvarchar(4000) Adım davranışını kontrol eden bir değer maskesi.
cmdexec_success_code int CmdExec adımı için, başarılı bir komutun süreç çıkış kodudur.
on_success_action nvarchar(4000) Adım başarılı olursa ne yapılmalı:

1 = Başarıyla bırak.
2 = Başarısızlıkla vazgeç.
3 = Bir sonraki adıma geç.
4 = Adım at.
on_success_step_id int Eğer on_success_action ise 4, bu bir sonraki yürütme adımını gösterir.
on_fail_action nvarchar(4000) Adım başarısız olursa yapılacak adım. Değerler için on_success_actionaynıdır.
on_fail_step_id int Eğer on_fail_action ise 4, bu bir sonraki yürütme adımını gösterir.
server sysname Rezerve edilmiş.
database_name sysname Transact-SQL adım, komutun çalıştığı veritabanı budur.
database_user_name sysname Transact-SQL adımda, komutun çalıştığı veritabanı kullanıcı bağlamı bu.
retry_attempts int Komutun başarısız olduğu kabul edilmeden önce (başarısız olursa) en fazla kez tekrar denenmesi gerekir.
retry_interval int Tekrar deneme denemeleri arasındaki aralık (dakikalarla).
os_run_priority varchar(4000) Rezerve edilmiş.
output_file_name varchar(200) Hangi komut çıktısının yazılması gerektiğini (yalnızcaTransact-SQL ve CmdExec adımları) dosyası.
last_run_outcome int Son kez yapılan adımın sonucu:

0 = Başarısız oldu
1 = Başarılı oldu
3 = İptal edildi
5 = Bilinmiyor
last_run_duration int Adımın süresi (saniyeler cinsinden) son çalıştırıldığında.
last_run_retries int Adım en son çalıştırıldığında komut kaç kez tekrar denendi.
last_run_date int Adımın en son başlatılmış tarihini belirt.
last_run_time int Adımın son başlatma zamanı.
proxy_id int İş adımı için vekil.

Bu, iş programları için sonuç setidir.

Sütun adı Veri türü Description
schedule_id int Programın tanımlayıcısı (tüm işler için benzersiz).
schedule_name sysname Programın adı (sadece bu iş için özel).
enabled int Programın aktif olup olmaması (1) önemli değil (0).
freq_type int İşin ne zaman yapılacağını gösteren değer:

1 = Bir kez
4 = Günlük
8 = Haftalık
16 = Aylık
32 = Aylık, kıyasıyla freq_interval
64 = SQL Server Agent hizmeti başladığında çalıştırılır.
freq_interval int İşin yapıldığı günler. Değer, 'nin freq_typedeğerine bağlıdır. Daha fazla bilgi için bkz. sp_add_schedule
freq_subday_type int için birimler freq_subday_interval. Daha fazla bilgi için bkz. sp_add_schedule
freq_subday_interval int İşin her yürütülmesi arasında gerçekleşecek dönem freq_subday_type sayısı. Daha fazla bilgi için bkz. sp_add_schedule
freq_relative_interval int Her ay planlanmış işin gerçekleşmesi freq_interval . Daha fazla bilgi için bkz. sp_add_schedule
freq_recurrence_factor int İşin planlanan uygulaması arasındaki ay sayısı.
active_start_date int İşin yürütülmeye başlama tarihi.
active_end_date int İşin sonuna kadar olan tarih.
active_start_time int İşin yürütülmesine başlama zamanı active_start_date.
active_end_time int İşin sona erme zamanı active_end_date.
date_created datetime Programın oluşturulma tarihi.
schedule_description nvarchar(4000) Programın İngilizce açıklaması (istenirse).
next_run_date int Bir sonraki çalışma tarihini çiz.
next_run_time int Takvim bir sonraki işin başlamasına neden olur.
schedule_uid uniqueidentifier Takvim için tanımlayıcı.
job_count int Bu programa referans veren iş sayısını döndürür.

Bu, iş hedef sunucuları için sonuç setidir.

Sütun adı Veri türü Description
server_id int Hedef sunucunun tanımlayıcısı.
server_name nvarchar(30) Hedef sunucunun bilgisayar adı.
enlist_date datetime Hedef sunucunun ana sunucuya kaydedildiği tarih.
last_poll_date datetime Hedef sunucunun ana sunucuya son kez sorduğu tarih.
last_run_date int İşin bu hedef sunucuda en son yürütülmeye başladığı tarih.
last_run_time int İşin bu hedef sunucuda en son yürütülmeye başladığı zaman.
last_run_duration int İşin son bu hedef sunucuda çalıştığı süre.
last_run_outcome tinyint Bu sunucuda son çalıştığında yapılan işin sonucu:

0 = Başarısız oldu
1 = Başarılı oldu
3 = İptal edildi
5 = Bilinmiyor
last_outcome_message nvarchar(1024) Bu hedef sunucuda son çalıştığında alınan sonuç mesajı.

Permissions

EXECUTE Bu prosedür üzerinde izinler verebilirsiniz, ancak bu izinler SQL Server yükseltmesi sırasında geçersiz kalabilir.

Diğer kullanıcılara, veritabanındaki aşağıdaki sabit veritabanı rollerinden birine msdb sahip olmalıdır:

  • SQLAgentUserRole
  • SQLAgentReaderRole
  • SQLAgentOperatorRole

Bu rollerin izinleri hakkında detaylar için SQL Server Agent Fixed Database Roles bölümüne bakınız.

SQLAgentUserRole üyeleri yalnızca sahip oldukları işleri görebilir. sysadmin, SQLAgentReaderRole ve SQLAgentOperatorRole üyeleri tüm yerel ve çoklu sunuculu işleri görebilir.

Örnekler

A. Tüm işler için liste bilgileri

Aşağıdaki örnek, veritabanında şu anda tanımlanan msdb tüm işler için bilgileri döndürmek için herhangi bir parametre olmadan prosedürü sp_help_job çalıştırır.

USE msdb;
GO

EXECUTE dbo.sp_help_job;
GO

B. Belirli bir kriterle eşleşen işler için liste bilgileri

Aşağıdaki örnek, işin etkinleştirildiği ve yürütüldüğü çok sunuculu işler françoisa için iş bilgilerini listeler.

USE msdb;
GO

EXECUTE dbo.sp_help_job
    @job_type = N'MULTI-SERVER',
    @owner_login_name = N'françoisa',
    @enabled = 1,
    @execution_status = 1;
GO

C. Bir iş için tüm bilgi yönlerini listeleyin

Aşağıdaki örnek, iş NightlyBackupsiçin verilen bilgilerin tüm yönlerini listeler.

USE msdb;
GO

EXECUTE dbo.sp_help_job
    @job_name = N'NightlyBackups',
    @job_aspect = N'ALL';
GO