Сценарий расписания для рабочих мест SQL
Как составить расписание заданий SQL с помощью SQL Script. У меня около 80 заданий SQL. Я хочу запланировать все свои задания SQL и получить подробную информацию о заданиях, запланированных заданиями, используя скрипт.
SELECT *
FROM [msdb].[dbo].[sysjobschedules]
Приведенный выше запрос только дает мне список заданий по расписанию, но не предоставляет никакого способа для планирования заданий SQL. Я ищу обобщенный сценарий для планирования работы SQL в базе данных. Как мне это сделать?
3 ответа
Я бы использовал этот встроенный процесс для этого:
Вот что делает proc:
1) Создает расписание с указанными параметрами и возвращает идентификатор расписания
2) Прикрепляет расписание к существующей работе.
Образец кода:
declare @start_date varchar(8) = convert(varchar(8), DATEADD(day,1,GETDATE()), 112)
EXEC sp_add_schedule
@schedule_name = N'SomeName',
@freq_type = 1,
@active_start_date = @start_date,
@active_start_time = 010000;
Кроме того, вы можете использовать этот запрос, чтобы найти информацию о ваших текущих графиках работы:
SELECT * FROM msdb.dbo.sysschedules;
Надеюсь это поможет!
Попробуй это
USE msdb ;
GO
EXEC sp_add_schedule
@schedule_name = N'NightlyJobs' ,
@freq_type = 4,
@freq_interval = 1,
@active_start_time = 010000 ;
GO
EXEC sp_attach_schedule
@job_name = N'BackupDatabase',
@schedule_name = N'NightlyJobs' ;
GO
EXEC sp_attach_schedule
@job_name = N'RunReports',
@schedule_name = N'NightlyJobs' ;
GO
простой способ к Create-A-SQL-сервера заданий, используя TSQL-
Извините, неправильно прочитал вопрос.
как насчет чего-то такого:
EXEC msdb.dbo.sp_add_jobschedule @job_id=N'yourjobid',@name=N'TestSchedule1',
@enabled=1,
@freq_type=8, -- 4 - daily, 8 - weekly
@freq_interval=2, --for weekly jobs 2 is Monday, 4 is Tuesday etc.
@freq_subday_type=1,
@freq_subday_interval=0,
@freq_relative_interval=0,
@freq_recurrence_factor=1,
@active_start_date=20150729,
@active_start_time=0,
schedule_id=@schedule_id
GO
или используйте sp_add_schedule для SQL Server 2014 и 2016. SQL 2012 и ниже - используйте sp_add_jobschedule