Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Şunlar için geçerlidir:SQL Server
Azure SQL Yönetilen Örneği
SQL Server Agent işi için bir program oluşturur.
Transact-SQL söz dizimi kuralları
Önemli
Azure SQL Managed Instanceüzerinde, SQL Server Agent özelliklerinin çoğu şu anda desteklenmektedir fakat hepsi değil. Detaylar için Azure SQL Managed Instance T-SQL Differences with SQL Server sayfasına bakınız.
Sözdizimi
sp_add_jobschedule
[ [ @job_id = ] 'job_id' ]
[ , [ @job_name = ] N'job_name' ]
, [ @name = ] N'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 ]
[ , [ @schedule_id = ] schedule_id OUTPUT ]
[ , [ @automatic_post = ] automatic_post ]
[ , [ @schedule_uid = ] 'schedule_uid' OUTPUT ]
[ ; ]
Arguments
[ @job_id = ] 'job_id'
Programın eklendiği işin iş tanımlama numarası.
@job_iduniqueidentifier'dır ve varsayılan olarak ' NULLdir.
Ya @job_id ya da @job_name belirtilmelidir, ancak ikisi de belirtilemez.
[ @job_name = ] N'job_name'
Programın eklendiği işin adı.
@job_namesysname'dir ve varsayılan olarak .NULL
Ya @job_id ya da @job_name belirtilmelidir, ancak ikisi de belirtilemez.
[ @name = ] ‘name’
Zamanlamanın adı. @namesysname'dir, varsayılan yoktur.
[ @enabled = ] etkinleştirildi
Programın mevcut durumunu gösterir.
@enabledtinyint, varsayılan 1 olarak (etkinleştirilmiş) olarak belirlenmiştir. Eğer 0, program etkinleştirilmiyor. Program devre dışı bırakıldığında, iş çalıştırılmaz.
[ @freq_type = ] freq_type
İşin ne zaman yapılacağını gösteren değer. @freq_typeint'tir ve aşağıdaki değerlerden biri olabilir:
| Değer | Description |
|---|---|
1 |
Bir kez |
4 |
Günlük |
8 |
Weekly |
16 |
Monthly |
32 |
Aylık, @freq_interval ile karşılaştırıldığında. |
64 |
SQL Server Agent servisi başladığında çalıştır. |
128 |
Bilgisayar boşta durduğunda çalıştırın. |
[ @freq_interval = ] freq_interval
İşin yapıldığı gün.
@freq_intervalint'tir, varsayılan olarak 0, ve aşağıdaki tabloda belirtildiği gibi @freq_type değerine bağlıdır:
| Değer @freq_type | Etkisi @freq_interval |
|---|---|
1 (bir kez) |
@freq_interval kullanılmıyor. |
4 (günlük) |
Her @freq_interval günde bir. |
8 (haftalık) |
@freq_interval , aşağıdakilerden biri veya birkaçındır (mantıksal bir OR operatörle birleşir):1 = Pazar2 = Pazartesi4 = Salı8 = Çarşamba16 = Perşembe32 = Cuma64 = Cumartesi |
16 (aylık) |
Ayın @freq_interval gününde. |
32 (aylık akraba) |
@freq_interval aşağıdakilerden biridir:1 = Pazar2 = Pazartesi3 = Salı4 = Çarşamba5 = Perşembe6 = Cuma7 = Cumartesi8 = Gün9 = Hafta içi10 = Hafta sonu günü |
64 (SQL Server Agent servisi başladığında) |
@freq_interval kullanılmıyor. |
128 |
@freq_interval kullanılmıyor. |
[ @freq_subday_type = ] freq_subday_type
@freq_subday_interval için birimleri belirtir. @freq_subday_typeint'tir ve şu değerlerden biri olabilir:
| Değer | Tanım (birim) |
|---|---|
1 |
Belirtilen zamanda |
2 |
Saniye |
4 |
Minutes |
8 |
Hours |
[ @freq_subday_interval = ] freq_subday_interval
Her iş yürütme arasında gerçekleşecek @freq_subday_type dönem sayısı.
@freq_subday_intervalint, varsayılan olarak .0
[ @freq_relative_interval = ] freq_relative_interval
Ayrıca, @freq_type32 (aylık aklaba) olarak ayarlandığında @freq_interval daha da tanımlanır.
@freq_relative_intervalint'dir ve şu değerlerden biri olabilir:
| Değer | Tanım (birim) |
|---|---|
1 |
First |
2 |
Second |
4 |
Third |
8 |
Fourth |
16 |
Son |
@freq_relative_interval aralığın oluşunu. Örneğin, @freq_relative_interval2ayarlıysa, @freq_type , 32@freq_interval3ise , olarak ayarlanmışsa, planlanmış iş her ayın ikinci Salı günü gerçekleşir.
[ @freq_recurrence_factor = ] freq_recurrence_factor
İşin planlanan yürütülmesi arasındaki hafta veya ay sayısı.
@freq_recurrence_factorint, varsayılan olarak 0.
@freq_recurrence_factor yalnızca @freq_type , 16, veya 32'ye ayarlandığında 8kullanılır.
[ @active_start_date = ] active_start_date
İşin yürütülmeye başlayacağı tarih.
@active_start_dateint, varsayılan olarak .NULL Tarih olarak biçimlendirilmiştir yyyyMMdd.
Eğer @active_start_date ayarlanmışsa, tarih daha büyük veya eşit 19900101olmalıdır.
Program oluşturulduktan sonra başlangıç tarihini gözden geçirin ve doğru tarih olduğundan emin olun. Daha fazla bilgi için, İşler Programları Oluştur ve Ekleyerek Çalışma bölümünde "Başlama Tarihini Planlama" bölümüne bakınız.
[ @active_end_date = ] active_end_date
İşin yürütülmesinin duracağı tarih.
@active_end_dateint, varsayılan olarak .99991231 Tarih olarak biçimlendirilmiştir yyyyMMdd.
[ @active_start_time = ] active_start_time
İşin yürütülmeye başlaması için @active_start_date ile @active_end_date arasındaki herhangi bir gün.
@active_start_timeint'tir, varsayılan olarak 000000. Saat, 24 saatlik bir saat biçimlendirilmiştir HHmmss .
[ @active_end_time = ] active_end_time
İşin sona ermesi active_start_date ile @active_end_date arasındaki herhangi bir gün.
@active_end_timeint, varsayılan olarak .235959 Saat, 24 saatlik bir saat biçimlendirilmiştir HHmmss .
[ @schedule_id = ] schedule_id ÇIKIŞ
Başarılı şekilde oluşturulursa programa atanan program tanımlama numarası. @schedule_id , int tipinde bir OUTPUT parametresidir.
[ @automatic_post = ] automatic_post
Yalnızca bilgilendirme amacıyla tanımlanır. Desteklenmiyor. Gelecekteki uyumluluk garanti edilmemektedir.
[ @schedule_uid = ] 'schedule_uid' ÇIKIŞI
Takvim için benzersiz bir tanımlayıcı. @schedule_uid , benzersiz tanımlayıcı tipte bir OUTPUT parametresidir.
Dönüş kodu değerleri
0 (başarı) veya 1 (başarısızlık).
Sonuç kümesi
Yok.
Açıklamalar
İş programları artık işlerden bağımsız olarak yönetilebilir. Bir işe bir program eklemek için, programı oluşturmak ve sp_attach_schedule programı bir işe eklemek için kullanınsp_add_schedule.
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.
Örnekler
Aşağıdaki örnek, her cumartesi saat 2:00'de çalıştırılan bir iş takvimi ataymaktadır SaturdayReports.
EXECUTE msdb.dbo.sp_add_jobschedule
@job_name = N'SaturdayReports', -- Job name
@name = N'Weekly_Sat_2AM', -- Schedule name
@freq_type = 8, -- Weekly
@freq_interval = 64, -- Saturday
@freq_recurrence_factor = 1, -- every week
@active_start_time = 20000; -- 2:00 AM