sp_update_schedule (Transact-SQL)
Изменяет установки для расписания агента SQL Server.
Синтаксис
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 ]
Аргументы
[ @schedule_id = ] schedule_id
Идентификатор изменяемого расписания. Аргумент schedule_id имеет тип int и не имеет значения по умолчанию. Должен быть задан либо аргумент schedule_id, либо аргумент schedule_name.[ @name =] 'schedule_name'
Имя изменяемого расписания. Аргумент schedule_name имеет тип sysname и не имеет значения по умолчанию. Должен быть задан либо аргумент schedule_id, либо аргумент schedule_name.[ @new_name= ] new_name
Новое имя расписания. Аргумент new_name имеет тип sysname и значение NULL по умолчанию. Если значение аргумента new_name равно NULL, имя расписания не меняется.[ @enabled = ] enabled
Показывает текущее состояние расписания. Аргумент enabled имеет тип tinyint и значение по умолчанию 1 (включено). Если равно 0, расписание не включено. Когда расписание не включено, никакие задания не будут запускаться по расписанию.[ @freq_type = ] freq_type
Значение, указывающее, когда задание должно быть выполнено. Аргумент freq_type имеет тип int, значение по умолчанию 0 и может принимать одно из следующих значений.Значение
Описание
1
Однократно
4
Ежедневно
8
Еженедельно
16
Ежемесячно
32
Ежемесячно в соответствии с аргументом freq interval
64
Запустить, когда запускается служба SQLServerAgent
128
Запускать, когда компьютер простаивает
[ @freq_interval = ] freq_interval
Дни, когда задание выполняется. Аргумент freq_interval имеет тип int, значение по умолчанию 0 и зависит от значения аргумента freq_type.Значение аргумента freq_type
Воздействие на аргумент freq_interval
1 (однократно)
Параметр freq_interval не используется.
4 (ежедневно)
Каждые freq_interval дней.
8 (еженедельно)
Значение аргумента freq_interval равно одному или нескольким таким значениям (комбинируется логическим оператором OR):
1 = Воскресенье
2 = Понедельник
4 = Вторник
8 = Среда
16 = Четверг
32 = Пятница
64 = Суббота
16 (ежемесячно)
На freq_interval день месяца.
32 (относительно ежемесячно)
Аргумент freq_interval принимает одно из следующих значений.
1 = Воскресенье
2 = Понедельник
3 = Вторник
4 = Среда
5 = Четверг
6 = Пятница
7 = Суббота
8 = День
9 = Рабочие дни
10 = Выходные дни
64 (когда запускается служба SQLServerAgent)
Параметр freq_interval не используется.
128
Параметр freq_interval не используется.
[ @freq_subday_type = ] freq_subday_type
Задает единицы измерения для аргумента freq_subday_interval*. Аргумент* freq_subday_type имеет тип int, значение по умолчанию 0 и может принимать одно из следующих значений.Значение
Описание (единица измерения)
0x1
В указанное время
0x2
Секунд
0x4
Минуты
0x8
Часов
[ @freq_subday_interval = ] freq_subday_interval
Число периодов freq_subday_type, которое должно пройти между выполнениями задания. Аргумент freq_subday_interval имеет тип int и значение по умолчанию 0.[ @freq_relative_interval = ] freq_relative_interval
Появления задания freq_interval в каждом месяце, если значение аргумента freq_interval равно 32 (относительно ежемесячно). Аргумент freq_relative_interval имеет тип int, значение по умолчанию 0 и может принимать одно из следующих значений.Значение
Описание (единица измерения)
1
Первый
2
Второй
4
Третий
8
Четвертый
16
Последний
[ @freq_recurrence_factor = ] freq_recurrence_factor
Число недель или месяцев между запланированными выполнениями задания. Аргумент freq_recurrence_factor используется только в том случае, если значение аргумента freq_type равно 8, 16 или 32. Аргумент freq_recurrence_factor имеет тип int и значение по умолчанию 0.[ @active_start_date = ] active_start_date
Дата, когда выполнение задания может начаться. Аргумент active_start_date имеет тип int и значение по умолчанию NULL, что означает сегодняшнюю дату. Формат даты: ГГГГMMДД. Если значение аргумента active_start_date не равно NULL, дата должна быть равна или превышать 19900101.После создания расписания проверьте дату начала и убедитесь, что она задана правильно. Дополнительные сведения см. в подразделе «Планирование даты начала» раздела Создание и присоединение расписаний к заданиям.
[ @active_end_date = ] active_end_date
Дата, когда выполнение задания может остановиться. Аргумент active_end_date имеет тип int и значение по умолчанию 99991231, что равнозначно 31 декабря 9999, в формате ГГГГММДД.[ @active_start_time = ] active_start_time
Время любого дня из промежутка от active_start_date до active_end_date, когда будет запущено выполнение этапа задания. Аргумент active_start_time имеет тип int и значение по умолчанию 000000, что означает 12:00:00 A.M. на 24-часовых часах и должно быть задано в формате ЧЧММСС.[ @active_end_time = ] active_end_time
Время любого дня из промежутка от active_start_date до active_end_date, когда будет завершено выполнение этапа задания. Аргумент active_end_time имеет тип int и значение по умолчанию 235959, что означает 11:59:59 P.M. на 24-часовых часах и должно быть задано в формате ЧЧММСС.[ @owner_login_name= ] 'owner_login_name']
Имя участника [системы безопасности] на уровне сервера, являющегося владельцем расписания. Аргумент owner_login_name имеет тип sysname и значение по умолчанию NULL, что означает, что владельцем расписания является его создатель.[ @automatic_post =] automatic_post
Зарезервировано.
Значения кода возврата
0 (успешное завершение) или 1 (неуспешное завершение)
Замечания
Все задания, которые используют расписание, немедленно используют новые установки. Однако изменение расписания не останавливает выполнение заданий.
Разрешения
По умолчанию данную хранимую процедуру могут выполнять члены предопределенной роли сервера sysadmin. Другим пользователям должна быть предоставлена одна из следующих фиксированных ролей базы данных агента SQL Server в базе данных msdb.
SQLAgentUserRole
SQLAgentReaderRole
SQLAgentOperatorRole
Дополнительные сведения о разрешениях для этих ролей см. в разделе Предопределенные роли базы данных агента SQL Server.
Только члены роли sysadmin могут изменять расписания, владельцами которых являются другие пользователи.
Примеры
Следующий пример изменяет состояние расписания NightlyJobs на состояние 0 и устанавливает владельцем terrid.
USE msdb ;
GO
EXEC dbo.sp_update_schedule
@name = 'NightlyJobs',
@enabled = 0,
@owner_login_name = 'terrid' ;
GO
Журнал изменений
Обновления |
---|
В описание параметра даты начала включены сведения о подтверждении даты начала после создания расписания. |
См. также