sp_delete_schedule (T-SQL)
Berlaku untuk: SQL Server
Menghapus jadwal.
Sintaks
sp_delete_schedule
[ [ @schedule_id = ] schedule_id ]
[ , [ @schedule_name = ] N'schedule_name' ]
[ , [ @force_delete = ] force_delete ]
[ , [ @automatic_post = ] automatic_post ]
[ ; ]
Argumen
[ @schedule_id = ] schedule_id
Nomor identifikasi jadwal yang akan dihapus. @schedule_id int, dengan default NULL
.
Baik @schedule_id atau @schedule_name harus ditentukan, tetapi keduanya tidak dapat ditentukan.
[ @schedule_name = ] N'schedule_name'
Nama jadwal yang akan dihapus. @schedule_name adalah sysname, dengan default NULL
.
Baik @schedule_id atau @schedule_name harus ditentukan, tetapi keduanya tidak dapat ditentukan.
[ @force_delete = ] force_delete
Menentukan apakah prosedur harus gagal jika jadwal dilampirkan ke pekerjaan. @force_delete adalah bit, dengan default 0
.
- Ketika @force_delete adalah
0
, prosedur tersimpan gagal jika jadwal dilampirkan ke pekerjaan. - Ketika @force_delete adalah
1
, jadwal dihapus terlepas dari apakah jadwal dilampirkan ke pekerjaan.
[ @automatic_post = ] automatic_post
Diidentifikasi hanya untuk tujuan informasi. Tidak didukung. Kompatibilitas di masa mendatang tidak dijamin.
Mengembalikan nilai kode
0
(berhasil) atau 1
(kegagalan).
Tataan hasil
Tidak ada.
Keterangan
Secara default, jadwal tidak dapat dihapus jika jadwal dilampirkan ke pekerjaan. Untuk menghapus jadwal yang dilampirkan ke pekerjaan, tentukan nilai 1
untuk @force_delete. Menghapus jadwal tidak menghentikan pekerjaan yang saat ini berjalan.
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
Pemilik pekerjaan dapat melampirkan pekerjaan ke jadwal dan melepaskan pekerjaan dari jadwal tanpa juga harus menjadi pemilik jadwal. Namun, jadwal tidak dapat dihapus jika pelampiran akan membiarkannya tanpa pekerjaan, kecuali pemanggil adalah pemilik jadwal.
Untuk detail tentang izin peran ini, lihat Peran Database Tetap Agen SQL Server.
Hanya anggota peran sysadmin yang dapat menghapus jadwal pekerjaan yang dimiliki oleh pengguna lain.
Contoh
J. Menghapus jadwal
Contoh berikut menghapus jadwal NightlyJobs
. Jika jadwal dilampirkan ke pekerjaan apa pun, contohnya tidak menghapus jadwal.
USE msdb;
GO
EXEC dbo.sp_delete_schedule
@schedule_name = N'NightlyJobs';
GO
B. Menghapus jadwal yang dilampirkan ke pekerjaan
Contoh berikut menghapus jadwal RunOnce
, terlepas dari apakah jadwal dilampirkan ke pekerjaan.
USE msdb;
GO
EXEC dbo.sp_delete_schedule
@schedule_name = 'RunOnce',
@force_delete = 1;
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