sp_update_schedule (Transact-SQL)
Ayarlarını değiştirir bir SQL Server Aracısı zamanlama.
Sözdizimi
sp_update_schedule
{ [ @schedule_id = ] schedule_id
| [ @name = ] 'schedule_name' }
[ , [ @new_name = ] new_name ]
[ , [ @enabled = ] enabled ]
[ , [ @freq_type = ] freq_type ]
[ , [ @freq_interval = ] freq_interval ]
[ , [ @freq_subday_type = ] freq_subday_type ]
[ , [ @freq_subday_interval = ] freq_subday_interval ]
[ , [ @freq_relative_interval = ] freq_relative_interval ]
[ , [ @freq_recurrence_factor = ] freq_recurrence_factor ]
[ , [ @active_start_date = ] active_start_date ]
[ , [ @active_end_date = ] active_end_date ]
[ , [ @active_start_time = ] active_start_time ]
[ , [ @active_end_time = ] active_end_time ]
[ , [ @owner_login_name = ] 'owner_login_name' ]
[ , [ @automatic_post =] automatic_post ]
Bağımsız değişkenler
[ @ schedule_id = ] schedule_id
Zamanlamayı değiştirmek için tanımlayıcı.schedule_idİş int, ile hiçbir varsayılan.Ya da schedule_id veya schedule_name belirtilmelidir.[ @name =] 'schedule_name'
Zamanlamayı değiştirmek için adı.schedule_nameİş sysname, ile hiçbir varsayılan.Ya da schedule_id veya schedule_name belirtilmelidir.[ @ new_name=] new_name
Zamanlama için yeni adı.new_nameİş sysname, varsayılan değer null.Zaman new_name Null, tablosunun adı değişmedi.[ @ Etkin = ] enabled
Zamanlamayı geçerli durumunu gösterir.enabledİş tinyint, varsayılan değer 1 (etkin).0, Zamanlamayı etkin değildir.Zamanlamayı etkin değilse, hiçbir iş bu zamanlamaya göre çalışır.[ @ freq_type = ] freq_type
Ne zaman yürütülecek bir iş olduğunu belirten bir değer.freq_typeİş int, varsayılan değer 0, ve bu değerlerden biri olabilir.Değer
Açıklama
1
Bir kez
4
Günlük
8
Haftalık
16
Aylık
32
Göreli olarak aylıkfreq interval
64
SQLServerAgent hizmet başladığında Çalıştır
128
Bilgisayar boştayken çalıştırma
[ @ freq_interval = ] freq_interval
Bir iş yürütülen günler.freq_intervalİş int, varsayılan değer 0ve durumunun değerine bağlı freq_type.Değerifreq_type
Etkisifreq_interval
1 (kez)
freq_intervalkullanılmaz.
4 (Günlük)
Her freq_interval gün.
8 (haftalık)
freq_intervalbir veya daha fazlasını (birleştirilen bir or mantıksal işleç):
1 Pazar =
2 = Pazartesi
4 = Salı
8 Çarşamba =
16 = Perşembe
32 Cuma =
64 Cumartesi =
16 (aylık)
Üzerinde freq_interval gün ay.
32 (aylık göreli)
freq_intervalaşağıdakilerden biridir:
1 Pazar =
2 = Pazartesi
3 = Salı
4 Çarşamba =
5 = Perşembe
6 Cuma =
7 Cumartesi =
8 = Day
9 = İŞGÜNÜ
10 Hafta sonu =
64 (SQLServerAgent hizmet başlatıldığında)
freq_intervalkullanılmaz.
128
freq_intervalkullanılmaz.
[ @ freq_subday_type = ] freq_subday_type
İçin birimleri belirleyen freq_subday_interval*.* freq_subday_typeİş int, varsayılan değer 0, ve bu değerlerden biri olabilir.Değer
Açıklama (birim)
0x1
Belirli bir saat
0x2
Seconds
0x4
Minutes
0x8
Hours
[ @ freq_subday_interval = ] freq_subday_interval
Sayısı freq_subday_type her işarasında ortaya dönemi.freq_subday_intervalİş int, varsayılan değer 0.[ @ freq_relative_interval = ] freq_relative_interval
Bir işgeçtiği freq_interval her ay, freq_interval olan 32 (aylık göreli).freq_relative_intervalİş int, varsayılan değer 0, ve bu değerlerden biri olabilir.Değer
Açıklama (birim)
1
First
2
İkinci
4
Üçüncü
8
Dördüncü
16
Last
[ @ freq_recurrence_factor = ] freq_recurrence_factor
Hafta veya zamanlanmış yürütme işarasındaki ay sayısı.freq_recurrence_factoris used only if freq_type is 8, 16, or 32.freq_recurrence_factorİş int, varsayılan değer 0.[ @ active_start_date = ] active_start_date
iş yürütme başlamak tarih .active_start_dateİş int, null varsayılan ile bugünün tarihbelirtir,.tarih YYYYAAGG biçimlendirilir.active_start_date null değil tarih 19900101 eşit veya büyük olmalıdır.Zamanlamayı oluşturulduktan sonra Başlangıç tarih gözden geçirin ve doğru tariholduğunu doğrulayın.Daha fazla bilgi için "Başlangıç tarihi planlama" bölümüne bakın. in Oluşturma ve işleri için Çizelgeler ekleme.
[ @ active_end_date = ] active_end_date
Bir iş yürütülmesini durdurmak tarih .active_end_dateİş int, varsayılan değer 99991231, hangi gösterir 31 Aralık 9999'a kadar.YYYYAAGG biçimlendirilmiş.[ @ active_start_time = ] active_start_time
' % S'saat saat arasında herhangi bir gün active_start_date ve active_end_date işyürütme başlamak için.active_start_timeolan int, 000000, varsayılan değer 12: 00: 00'da gösterirbir 24 saatlik zaman ve SSDDSS formunu kullanarak girilmelidir.[ @ active_end_time = ] active_end_time
' % S'saat saat arasında herhangi bir gün active_start_date ve active_end_date Son yürütülmesine iş.active_end_timeis int, with a default of 235959, which indicates 11:59:59 P.M.bir 24 saatlik zaman ve SSDDSS formunu kullanarak girilmelidir.[ @ owner_login_name=] 'owner_login_name']
Zamanlamayı sahibi olan sunucu asıl adı.owner_login_nameİş sysname, varsayılan değer null, hangi gösterir olduğunu zamanlamayı sahibi tarafından creator.[ @ automatic_post =] automatic_post
Ayrılmış.
Dönüş Kodu Değerleri
0 (başarılı) veya 1 (başarısız)
Açıklamalar
Zamanlamayı hemen kullanan tüm işleri yeni ayarları kullanın.Ancak, zamanlama değiştirme çalışmakta olan işleri durdurmaz.
İzinler
Varsayılan olarak, üye sysadmin sabit sunucu rolü olabilir yürütmek bu saklı yordam.Diğer kullanıcıların aşağıdakilerden birini verilmelidir SQL Server Agent veritabanı rolleri sabit msdb veritabanı:
SQLAgentUserRole
SQLAgentReaderRole
SQLAgentOperatorRole
Bu roller, izinler hakkında daha fazla bilgi için bkz: SQL Server Agent veritabanı rolleri sabit.
Yalnızca üyeleri sysadmin başka bir kullanıcıya ait bir zamanlamayı değiştirebilirsiniz.
Örnekler
Aşağıdaki örnek etkinleştirilmiş durumunu değiştirir NightlyJobs için zamanlama 0 ve ayarlar sahibine terrid.
USE msdb ;
GO
EXEC dbo.sp_update_schedule
@name = 'NightlyJobs',
@enabled = 0,
@owner_login_name = 'terrid' ;
GO
Ayrıca bkz.