sp_detach_schedule (Transact-SQL)
Удаляет ассоциативную связь между расписанием и заданием.
Синтаксис
sp_detach_schedule
{ [ @job_id = ] job_id | [ @job_name = ] 'job_name' } ,
{ [ @schedule_id = ] schedule_id | [ @schedule_name = ] 'schedule_name' } ,
[ @delete_unused_schedule = ] delete_unused_schedule
Аргументы
[ @job_id= ] job_id
Идентификационный номер задания, из которого удаляется расписание. Аргумент job_id имеет тип uniqueidentifier и значение по умолчанию NULL.[ @job_name= ] 'job_name'
Название задания, из которого удаляется расписание. Аргумент job_name имеет тип sysname и значение по умолчанию NULL.Примечание Необходимо указать либо аргумент job_id, либо аргумент job_name, но не оба аргумента одновременно.
[ @schedule_id= ] schedule_id
Идентификационный номер расписания, которое удаляется из задания. Аргумент schedule_id имеет тип int и значение по умолчанию NULL.[ @schedule_name= ] 'schedule_name'
Название расписания, которое удаляется из задания. Аргумент schedule_name имеет тип sysname и значение по умолчанию NULL.Примечание Необходимо указать либо аргумент schedule_id, либо аргумент schedule_name, но не оба аргумента одновременно.
[ @delete_unused_schedule= ] delete_unused_schedule
Указывает, удалять ли неиспользованные расписания. Аргумент delete_unused_schedule имеет тип bit и значение по умолчанию 0, что означает, что все расписания будут сохранены, даже если ни одно из заданий в них не включено. Если значение равно 1, неиспользуемые расписания заданий будут удалены, если ни одно из заданий в них не включено.
Значения кодов возврата
0 (успешное завершение) или 1 (неуспешное завершение)
Результирующие наборы
Нет
Разрешения
По умолчанию эту хранимую процедуру могут выполнять члены предопределенной роли сервера sysadmin. Другим пользователям должна быть предоставлена одна из следующих предопределенных ролей базы данных агента SQL Server в базе данных msdb:
SQLAgentUserRole
SQLAgentReaderRole
SQLAgentOperatorRole
Подробные сведения о разрешениях для этих ролей см. в разделе Предопределенные роли базы данных агента SQL Server.
SQL Server проверяет, является ли пользователь владельцем расписания. Только члены предопределенной роли сервера sysadmin могут удалять расписания из заданий, которыми владеют другие пользователи.
Примеры
Следующий пример удаляет ассоциативную связь между расписанием 'NightlyJobs' и заданием 'BackupDatabase'.
USE msdb ;
GO
EXEC dbo.sp_detach_schedule
@job_name = 'BackupDatabase',
@schedule_name = 'NightlyJobs' ;
GO