sp_delete_schedule(Transact-SQL)
일정을 삭제합니다.
구문
sp_delete_schedule { [ @schedule_id = ] schedule_id | [ @schedule_name = ] 'schedule_name' } ,
[ @force_delete = ] force_delete
인수
[ @schedule_id= ] schedule_id
삭제할 일정의 ID입니다. schedule_id는 int이며 기본값은 NULL입니다.[!참고]
schedule_id 또는 schedule_name 중 하나를 지정해야 하며 둘 다를 지정할 수는 없습니다.
[ @schedule_name= ] 'schedule_name'
삭제할 일정의 이름입니다. schedule_name은 sysname이며 기본값은 NULL입니다.[!참고]
schedule_id 또는 schedule_name 중 하나를 지정해야 하며 둘 다를 지정할 수는 없습니다.
[ @force_delete = ] force_delete
일정을 작업에 연결할 경우 프로시저의 실패 여부를 지정합니다. Force_delete는 bit이며 기본값은 0입니다. force_delete가 0인 경우 일정을 작업에 연결하면 저장 프로시저가 실패합니다. force_delete가 1인 경우에는 일정이 작업에 연결되었는지 여부에 관계없이 일정이 삭제됩니다.
반환 코드 값
0(성공) 또는 1(실패)
결과 집합
없음
주의
기본적으로 작업에 연결된 일정은 삭제할 수 없습니다. 작업에 연결된 일정을 삭제하려면 force_delete의 값을 1로 지정합니다. 일정을 삭제해도 현재 실행 중인 작업은 중지되지 않습니다.
사용 권한
기본적으로 sysadmin 고정 서버 역할의 멤버는 이 저장 프로시저를 실행할 수 있습니다. 다른 사용자는 msdb 데이터베이스의 다음 SQL Server 에이전트 고정 데이터베이스 역할 중 하나를 부여 받아야 합니다.
SQLAgentUserRole
SQLAgentReaderRole
SQLAgentOperatorRole
이러한 역할의 사용 권한에 대한 자세한 내용은 SQL Server 에이전트 고정 데이터베이스 역할을 참조하십시오.
sysadmin 역할의 멤버만 다른 사용자가 소유한 작업 일정을 삭제할 수 있습니다.
예
1. 일정 삭제
다음 예에서는 NightlyJobs이라는 일정을 삭제합니다. 이 예에서는 작업에 연결된 일정을 삭제하지 않습니다.
USE msdb ;
GO
EXEC dbo.sp_delete_schedule
@schedule_name = N'NightlyJobs' ;
GO
2. 작업에 연결된 일정 삭제
다음은 일정이 작업에 연결되었는지 여부에 관계없이 RunOnce라는 일정을 삭제하는 예입니다.
USE msdb ;
GO
EXEC dbo.sp_delete_schedule
@schedule_name = 'RunOnce',
@force_delete = 1;
GO