sp_help_job (T-SQL)

Berlaku untuk:SQL Server

Mengembalikan informasi tentang pekerjaan yang digunakan oleh SQL Server Agent untuk melakukan aktivitas otomatis di SQL Server.

Konvensi sintaks transact-SQL

Sintaks

  
sp_help_job { [ @job_id = ] job_id  
[ @job_name = ] 'job_name' }   
     [ , [ @job_aspect = ] 'job_aspect' ]   
     [ , [ @job_type = ] 'job_type' ]   
     [ , [ @owner_login_name = ] 'login_name' ]   
     [ , [ @subsystem = ] 'subsystem' ]   
     [ , [ @category_name = ] 'category' ]   
     [ , [ @enabled = ] enabled ]   
     [ , [ @execution_status = ] status ]   
     [ , [ @date_comparator = ] 'date_comparison' ]   
     [ , [ @date_created = ] date_created ]   
     [ , [ @date_last_modified = ] date_modified ]   
     [ , [ @description = ] 'description_pattern' ]  

Argumen

[ @job_id = ] job_id Nomor identifikasi pekerjaan. job_id adalah uniqueidentifier, dengan default NULL.

[ @job_name = ] 'job_name' Nama pekerjaan. job_name adalah sysname, dengan default NULL.

Catatan

Untuk melihat pekerjaan tertentu, job_id atau job_name harus ditentukan. Hilangkan job_id dan job_name untuk mengembalikan informasi tentang semua pekerjaan.

[ @job_aspect = ] 'job_aspect' Atribut pekerjaan yang akan ditampilkan. job_aspect adalah varchar(9), dengan default NULL, dan dapat menjadi salah satu nilai ini.

Nilai Deskripsi
ALL Informasi aspek pekerjaan
PEKERJAAN Informasi pekerjaan
JADWAL Informasi jadwal
LANGKAH Informasi langkah pekerjaan
TARGET Informasi target

[ @job_type = ] 'job_type' Jenis pekerjaan yang akan disertakan dalam laporan. job_type adalah varchar(12), dengan default NULL. job_type bisa LOKAL atau MULTI-SERVER.

[ @owner_login_name = ] 'login_name' Nama login pemilik pekerjaan. login_name adalah sysname, dengan default NULL.

[ @subsystem = ] 'subsystem' Nama subsistem. subsistem adalah nvarchar(40), dengan default NULL.

[ @category_name = ] 'category' Nama kategori. kategori adalah sysname, dengan default NULL.

[ @enabled = ] enabled Angka yang menunjukkan apakah informasi ditampilkan untuk pekerjaan yang diaktifkan atau pekerjaan yang dinonaktifkan. diaktifkan adalah tinyint, dengan default NULL. 1 menunjukkan pekerjaan yang diaktifkan, dan 0 menunjukkan pekerjaan yang dinonaktifkan.

[ @execution_status = ] status Status eksekusi untuk pekerjaan. status adalah int, dengan default NULL, dan bisa menjadi salah satu nilai ini.

Nilai Deskripsi
0 Mengembalikan hanya pekerjaan yang tidak diam atau ditangguhkan.
1 Mengeksekusi.
2 Menunggu utas.
3 Di antara percobaan ulang.
4 Siaga.
5 Ditangguhkan.
7 Melakukan tindakan penyelesaian.

[ @date_comparator = ] 'date_comparison' Operator perbandingan yang digunakan dalam perbandingan date_created dan date_modified. date_comparison adalah char(1),dan dapat berupa =, <, atau >.

[ @date_created = ] date_created Tanggal pekerjaan dibuat. date_created adalah datetime, dengan default NULL.

[ @date_last_modified = ] date_modified Tanggal pekerjaan terakhir diubah. date_modified adalah datetime, dengan default NULL.

[ @description = ] 'description_pattern' Deskripsi pekerjaan. description_pattern adalah nvarchar(512), dengan default NULL. description_pattern dapat menyertakan karakter wildcard SQL Server untuk pencocokan pola.

Mengembalikan Nilai Kode

0 (berhasil) atau 1 (kegagalan)

Tataan Hasil

Jika tidak ada argumen yang ditentukan, sp_help_job mengembalikan tataan hasil ini.

Nama kolom Jenis data Deskripsi
job_id pengidentifikasi unik ID unik pekerjaan.
originating_server nvarchar(30) Nama server tempat pekerjaan berasal.
nama nama sysname Nama pekerjaan.
diaktifkan kecil Menunjukkan apakah pekerjaan diaktifkan untuk dijalankan.
description nvarchar(512) Deskripsi untuk pekerjaan.
start_step_id int ID langkah dalam pekerjaan di mana eksekusi harus dimulai.
category nama sysname Kategori pekerjaan.
pemilik nama sysname Pemilik pekerjaan.
notify_level_eventlog int Bitmask yang menunjukkan dalam keadaan apa peristiwa pemberitahuan harus dicatat ke log aplikasi Microsoft Windows. Dapat berupa salah satu nilai ini:

0 = Tidak pernah

1 = Ketika pekerjaan berhasil

2 = Ketika pekerjaan gagal

3 = Setiap kali pekerjaan selesai (terlepas dari hasil pekerjaan)
notify_level_email int Bitmask yang menunjukkan dalam keadaan apa email pemberitahuan harus dikirim ketika pekerjaan selesai. Nilai yang mungkin sama dengan untuk notify_level_eventlog.
notify_level_netsend int Bitmask yang menunjukkan dalam keadaan apa pesan jaringan harus dikirim ketika pekerjaan selesai. Nilai yang mungkin sama dengan untuk notify_level_eventlog.
notify_level_page int Bitmask yang menunjukkan dalam keadaan apa halaman harus dikirim ketika pekerjaan selesai. Nilai yang mungkin sama dengan untuk notify_level_eventlog.
notify_email_operator nama sysname Nama email operator yang akan diberi tahu.
notify_netsend_operator nama sysname Nama komputer atau pengguna yang digunakan ketika mengirim pesan jaringan.
notify_page_operator nama sysname Nama komputer atau pengguna yang digunakan saat mengirim halaman.
delete_level int Bitmask yang menunjukkan dalam keadaan apa pekerjaan harus dihapus ketika pekerjaan selesai. Nilai yang mungkin sama dengan untuk notify_level_eventlog.
date_created datetime Tanggal pekerjaan dibuat.
date_modified datetime Tanggal pekerjaan terakhir diubah.
version_number int Versi pekerjaan (diperbarui secara otomatis setiap kali pekerjaan dimodifikasi).
last_run_date int Tanggal eksekusi pekerjaan terakhir dimulai.
last_run_time int Waktu pekerjaan terakhir kali memulai eksekusi.
last_run_outcome int Hasil pekerjaan terakhir kali dijalankan:

0 = Gagal

1 = Berhasil

3 = Dibatalkan

5 = Tidak diketahui
next_run_date int Tanggal pekerjaan dijadwalkan untuk dijalankan berikutnya.
next_run_time int Waktu pekerjaan dijadwalkan untuk dijalankan berikutnya.
next_run_schedule_id int Nomor identifikasi jadwal eksekusi berikutnya.
current_execution_status int Status eksekusi saat ini:

1 = Mengeksekusi

2 = Menunggu Utas

3 = Antara Percobaan Ulang

4 = Menganggur

5 = Ditangguhkan

6 = Usang

7 = PerformingCompletionActions
current_execution_step nama sysname Langkah eksekusi saat ini dalam pekerjaan.
current_retry_attempt int Jika pekerjaan sedang berjalan dan langkah telah dicoba kembali, ini adalah upaya coba lagi saat ini.
has_step int Jumlah langkah pekerjaan yang dimiliki pekerjaan.
has_schedule int Jumlah jadwal pekerjaan yang dimiliki pekerjaan.
has_target int Jumlah server target yang dimiliki pekerjaan.
jenis int Jenis pekerjaan.

1 = Pekerjaan lokal.

2 = Pekerjaan multiserver.

0 = Pekerjaan tidak memiliki server target.

Jika job_id atau job_name ditentukan, sp_help_job mengembalikan kumpulan hasil tambahan ini untuk langkah-langkah pekerjaan, jadwal pekerjaan, dan server target pekerjaan.

Ini adalah hasil yang ditetapkan untuk langkah-langkah pekerjaan.

Nama kolom Jenis data Deskripsi
step_id int Pengidentifikasi unik (untuk pekerjaan ini) untuk langkah tersebut.
step_name nama sysname Nama langkah.
Subsistem nvarchar(40) Subsistem untuk menjalankan perintah langkah.
command nvarchar(3200) Perintah untuk dijalankan.
flags nvarchar(4000) Bitmask nilai yang mengontrol perilaku langkah.
cmdexec_success_code int Untuk langkah CmdExec, ini adalah kode keluar proses dari perintah yang berhasil.
on_success_action nvarchar(4000) Apa yang harus dilakukan jika langkah tersebut berhasil:

1 = Keluar dengan sukses.

2 = Keluar dengan kegagalan.

3 = Buka langkah berikutnya.

4 = Buka langkah.
on_success_step_id int Jika on_success_action adalah 4, ini menunjukkan langkah berikutnya untuk dijalankan.
on_fail_action nvarchar(4000) Tindakan yang harus diambil jika langkah gagal. Nilai sama seperti untuk on_success_action.
on_fail_step_id int Jika on_fail_action adalah 4, ini menunjukkan langkah berikutnya untuk dijalankan.
server nama sysname Dicadangkan.
database_name nama sysname Untuk langkah Transact-SQL, ini adalah database tempat perintah akan dijalankan.
database_user_name nama sysname Untuk langkah Transact-SQL, ini adalah konteks pengguna database tempat perintah dijalankan.
retry_attempts int Jumlah maksimum kali perintah harus dicoba ulang (jika tidak berhasil) sebelum langkah dianggap gagal.
retry_interval int Interval (dalam menit) antara upaya coba lagi.
os_run_priority varchar(4000) Dicadangkan.
output_file_name varchar(200) File yang output perintahnya harus ditulis (langkah-langkah Transact-SQL dan CmdExec saja).
last_run_outcome int Hasil langkah terakhir kali dijalankan:

0 = Gagal

1 = Berhasil

3 = Dibatalkan

5 = Tidak diketahui
last_run_duration int Durasi (dalam detik) dari langkah terakhir kali dijalankan.
last_run_retries int Berapa kali perintah dicoba kembali terakhir kali langkah dijalankan.
last_run_date int Tanggal langkah terakhir memulai eksekusi.
last_run_time int Waktu langkah terakhir memulai eksekusi.
proxy_id int Proksi untuk langkah pekerjaan.

Ini adalah hasil yang ditetapkan untuk jadwal pekerjaan.

Nama kolom Jenis data Deskripsi
schedule_id int Pengidentifikasi jadwal (unik di semua pekerjaan).
schedule_name nama sysname Nama jadwal (unik hanya untuk pekerjaan ini).
diaktifkan int Apakah jadwal aktif (1) atau tidak (0).
freq_type int Nilai yang menunjukkan kapan pekerjaan akan dijalankan:

1 = Sekali

4 = Harian

8 = Mingguan

16 = Bulanan

32 = Bulanan, relatif terhadap freq_interval

64 = Jalankan saat layanan SQLServerAgent dimulai.
freq_interval int Hari ketika pekerjaan dijalankan. Nilai tergantung pada nilai freq_type. Untuk informasi selengkapnya, lihat sp_add_schedule (Transact-SQL)
freq_subday_type Int Unit untuk freq_subday_interval. Untuk informasi selengkapnya, lihat sp_add_schedule (Transact-SQL)
freq_subday_interval int Jumlah periode freq_subday_type yang akan terjadi antara setiap eksekusi pekerjaan. Untuk informasi selengkapnya, lihat sp_add_schedule (Transact-SQL)
freq_relative_interval int Terjadinya pekerjaan terjadwal dari freq_interval dalam setiap bulan. Untuk informasi selengkapnya, lihat sp_add_schedule (Transact-SQL)
freq_recurrence_factor int Jumlah bulan antara eksekusi pekerjaan yang dijadwalkan.
active_start_date int Tanggal untuk memulai eksekusi pekerjaan.
active_end_date int Tanggal hingga akhir eksekusi pekerjaan.
active_start_time int Waktu untuk memulai eksekusi pekerjaan pada active_start_date.
active_end_time int Waktu untuk mengakhiri eksekusi pekerjaan pada active_end_date.
date_created datetime Tanggal jadwal dibuat.
schedule_description nvarchar(4000) Deskripsi bahasa Inggris tentang jadwal (jika diminta).
next_run_date int Tanggal jadwal selanjutnya akan menyebabkan pekerjaan berjalan.
next_run_time int Waktu jadwal selanjutnya akan menyebabkan pekerjaan berjalan.
schedule_uid pengidentifikasi unik Pengidentifikasi untuk jadwal.
job_count int Mengembalikan jumlah pekerjaan yang mereferensikan jadwal ini.

Ini adalah hasil yang ditetapkan untuk server target pekerjaan.

Nama kolom Jenis data Deskripsi
server_id int Pengidentifikasi server target.
server_name nvarchar(30) Nama komputer server target.
enlist_date datetime Tanggal server target yang terdaftar ke server master.
last_poll_date datetime Tanggal server target terakhir kali melakukan polling pada server master.
last_run_date int Tanggal pekerjaan terakhir kali memulai eksekusi pada server target ini.
last_run_time int Waktu pekerjaan terakhir kali memulai eksekusi pada server target ini.
last_run_duration int Durasi pekerjaan terakhir kali dijalankan pada server target ini.
last_run_outcome kecil Hasil pekerjaan terakhir kali dijalankan di server ini:

0 = Gagal

1 = Berhasil

3 = Dibatalkan

5 = Tidak diketahui
last_outcome_message nvarchar(1024) Hasil pesan dari pekerjaan terakhir kali dijalankan di server target ini.

Izin

Secara default, anggota peran server tetap sysadmin dapat menjalankan prosedur tersimpan ini. Pengguna lain harus diberikan salah satu peran database tetap SQL Server Agent berikut dalam database msdb :

  • SQLAgentUserRole

  • SQLAgentReaderRole

  • SQLAgentOperatorRole

Untuk detail tentang izin peran ini, lihat Peran Database Tetap Agen SQL Server.

Anggota SQLAgentUserRole hanya dapat melihat pekerjaan yang mereka miliki. Anggota sysadmin, SQLAgentReaderRole, dan SQLAgentOperatorRole dapat melihat semua pekerjaan lokal dan multiserver.

Contoh

J. Mencantumkan informasi untuk semua pekerjaan

Contoh berikut menjalankan sp_help_job prosedur tanpa parameter untuk mengembalikan informasi untuk semua pekerjaan yang saat ini ditentukan dalam msdb database.

USE msdb ;  
GO  
  
EXEC dbo.sp_help_job ;  
GO  

B. Mencantumkan informasi untuk pekerjaan yang cocok dengan kriteria tertentu

Contoh berikut mencantumkan informasi pekerjaan untuk pekerjaan multiserver yang dimiliki oleh françoisa tempat pekerjaan diaktifkan dan dijalankan.

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

C. Mencantumkan semua aspek informasi untuk pekerjaan

Contoh berikut mencantumkan semua aspek informasi untuk pekerjaan NightlyBackups.

USE msdb ;  
GO  
  
EXEC dbo.sp_help_job  
    @job_name = N'NightlyBackups',  
    @job_aspect = N'ALL' ;  
GO  

Lihat Juga

sp_add_job (T-SQL)
sp_delete_job (T-SQL)
sp_update_job (T-SQL)
Prosedur Tersimpan Sistem (Transact-SQL)