sp_help_jobhistory (T-SQL)
Berlaku untuk:SQL Server
Menyediakan informasi tentang pekerjaan untuk server di domain administrasi multiserver.
Sintaks
sp_help_jobhistory
[ [ @job_id = ] 'job_id' ]
[ , [ @job_name = ] N'job_name' ]
[ , [ @step_id = ] step_id ]
[ , [ @sql_message_id = ] sql_message_id ]
[ , [ @sql_severity = ] sql_severity ]
[ , [ @start_run_date = ] start_run_date ]
[ , [ @end_run_date = ] end_run_date ]
[ , [ @start_run_time = ] start_run_time ]
[ , [ @end_run_time = ] end_run_time ]
[ , [ @minimum_run_duration = ] minimum_run_duration ]
[ , [ @run_status = ] run_status ]
[ , [ @minimum_retries = ] minimum_retries ]
[ , [ @oldest_first = ] oldest_first ]
[ , [ @server = ] N'server' ]
[ , [ @mode = ] 'mode' ]
[ ; ]
Argumen
[ @job_id = ] 'job_id'
Nomor identifikasi pekerjaan. @job_id adalah uniqueidentifier, dengan default NULL
.
[ @job_name = ] N'job_name'
Nama pekerjaan. @job_name adalah sysname, dengan default NULL
.
[ @step_id = ] step_id
Nomor identifikasi langkah. @step_id int, dengan default NULL
.
[ @sql_message_id = ] sql_message_id
Nomor identifikasi pesan kesalahan yang dikembalikan oleh SQL Server saat menjalankan pekerjaan. @sql_message_id int, dengan default NULL
.
[ @sql_severity = ] sql_severity
Tingkat keparahan pesan kesalahan yang dikembalikan oleh SQL Server saat menjalankan pekerjaan. @sql_severity int, dengan default NULL
.
[ @start_run_date = ] start_run_date
Tanggal pekerjaan dimulai. @start_run_date int, dengan default NULL
. @start_run_date harus dimasukkan dalam formulir yyyyMMdd
, di mana yyyy
adalah tahun empat karakter, MM
adalah nama bulan dua karakter, dan dd
merupakan nama hari dua karakter.
[ @end_run_date = ] end_run_date
Tanggal pekerjaan selesai. @end_run_date int, dengan default NULL
. @end_run_date harus dimasukkan dalam formulir yyyyMMdd
, di mana yyyy
adalah tahun empat karakter, MM
adalah nama bulan dua karakter, dan dd
merupakan nama hari dua karakter.
[ @start_run_time = ] start_run_time
Waktu pekerjaan dimulai. @start_run_time int, dengan default NULL
. @start_run_time harus dimasukkan dalam formulir HHmmss
, di mana HH
adalah jam dua karakter dalam sehari, mm
adalah menit dua karakter dalam sehari, dan ss
merupakan detik dua karakter dalam sehari.
[ @end_run_time = ] end_run_time
Waktu pekerjaan menyelesaikan eksekusinya. @end_run_time int, dengan default NULL
. @end_run_time harus dimasukkan dalam formulir HHmmss
, di mana HH
adalah jam dua karakter dalam sehari, mm
adalah menit dua karakter dalam sehari, dan ss
merupakan detik dua karakter dalam sehari.
[ @minimum_run_duration = ] minimum_run_duration
Lama waktu minimum untuk penyelesaian pekerjaan. @minimum_run_duration int, dengan default NULL
. @minimum_run_duration harus dimasukkan dalam formulir HHmmss
, di mana HH
adalah jam dua karakter dalam sehari, mm
adalah menit dua karakter dalam sehari, dan ss
merupakan detik dua karakter dalam sehari.
[ @run_status = ] run_status
Status eksekusi pekerjaan.@run_status int, dan bisa menjadi salah satu nilai ini.
Nilai | Deskripsi |
---|---|
0 |
Gagal |
1 |
Berhasil |
2 |
Coba lagi (hanya langkah) |
3 |
Canceled |
4 |
Pesan sedang berlangsung |
5 |
Tidak dikenal |
[ @minimum_retries = ] minimum_retries
Jumlah minimum kali pekerjaan harus mencoba kembali berjalan. @minimum_retries int, dengan default NULL
.
[ @oldest_first = ] oldest_first
Apakah akan menyajikan output dengan pekerjaan terlama terlebih dahulu. @oldest_first int, dengan default 0
.
0
menyajikan pekerjaan terbaru terlebih dahulu.1
menyajikan pekerjaan tertua terlebih dahulu.
[ @server = ] N'server'
Nama server tempat pekerjaan dilakukan. @server adalah sysname, dengan default NULL
.
[ @mode = ] 'mode'
Menentukan apakah SQL Server mencetak semua kolom dalam tataan hasil (FULL
) atau ringkasan (SUMMARY
) kolom. @mode adalah varchar(7), dengan default SUMMARY
.
Mengembalikan nilai kode
0
(berhasil) atau 1
(kegagalan).
Tataan hasil
Daftar kolom aktual bergantung pada nilai @mode. Kumpulan kolom yang paling komprehensif diperlihatkan dalam tabel berikut, dan dikembalikan saat @mode adalah FULL
.
Nama kolom | Jenis data | Deskripsi |
---|---|---|
instance_id |
int | Nomor identifikasi entri riwayat. |
job_id |
pengidentifikasi unik | Nomor identifikasi pekerjaan. |
job_name |
nama sysname | Nama pekerjaan. |
step_id |
int | Nomor identifikasi langkah (0 untuk riwayat pekerjaan). |
step_name |
nama sysname | Nama langkah (NULL untuk riwayat pekerjaan). |
sql_message_id |
int | Untuk langkah Transact-SQL, nomor kesalahan Transact-SQL terbaru yang ditemui saat menjalankan perintah. |
sql_severity |
int | Untuk langkah Transact-SQL, tingkat keparahan kesalahan Transact-SQL tertinggi yang ditemui saat menjalankan perintah. |
message |
nvarchar(1024) | Pesan riwayat pekerjaan atau langkah. |
run_status |
int | Hasil pekerjaan atau langkah. |
run_date |
int | Tanggal pekerjaan atau langkah mulai dijalankan. |
run_time |
int | Waktu pekerjaan atau langkah mulai dijalankan. |
run_duration |
int | Waktu yang berlalu dalam eksekusi pekerjaan atau langkah dalam HHmmss format. |
operator_emailed |
nvarchar(20) | Operator yang dikirim melalui email mengenai pekerjaan ini (adalah NULL untuk riwayat langkah). |
operator_netsent |
nvarchar(20) | Operator yang dikirimi pesan jaringan mengenai pekerjaan ini (adalah NULL untuk riwayat langkah). |
operator_paged |
nvarchar(20) | Operator yang diberi halaman mengenai pekerjaan ini (adalah NULL untuk riwayat langkah). |
retries_attempted |
int | Frekuensi langkah dicoba kembali (selalu 0 untuk riwayat pekerjaan). |
server |
nvarchar(30) | Server tempat langkah atau pekerjaan dijalankan. Selalu (local ). |
Keterangan
sp_help_jobhistory
mengembalikan laporan dengan riwayat pekerjaan terjadwal yang ditentukan. Jika tidak ada parameter yang ditentukan, laporan berisi riwayat untuk semua pekerjaan terjadwal.
Izin
Prosedur tersimpan ini dimiliki oleh peran db_owner . Anda dapat memberikan EXECUTE
izin untuk pengguna mana pun, tetapi izin ini dapat ditimpa selama peningkatan SQL Server.
Pengguna lain harus diberikan salah satu peran database tetap SQL Server Agent berikut dalam msdb
database:
- SQLAgentUserRole
- SQLAgentReaderRole
- SQLAgentOperatorRole
Untuk detail tentang izin peran ini, lihat Peran Database Tetap Agen SQL Server.
Anggota peran database SQLAgentUserRole hanya dapat melihat riwayat untuk pekerjaan yang mereka miliki.
Contoh
J. Mencantumkan semua informasi pekerjaan untuk pekerjaan
Contoh berikut mencantumkan semua informasi pekerjaan untuk pekerjaan tersebut NightlyBackups
.
USE msdb;
GO
EXEC dbo.sp_help_jobhistory
@job_name = N'NightlyBackups';
GO
B. Mencantumkan informasi untuk pekerjaan yang cocok dengan kondisi tertentu
Contoh berikut mencetak semua kolom dan semua informasi pekerjaan untuk pekerjaan yang gagal dan langkah-langkah pekerjaan yang gagal dengan pesan 50100
kesalahan (pesan kesalahan yang ditentukan pengguna) dan tingkat keparahan 20
.
USE msdb;
GO
EXEC dbo.sp_help_jobhistory
@sql_message_id = 50100,
@sql_severity = 20,
@run_status = 0,
@mode = N'FULL';
GO
Konten terkait
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk