sp_delete_schedule(Transact-SQL)

일정을 삭제합니다.

항목 링크 아이콘 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

참고 항목

참조

sp_add_schedule(Transact-SQL)

개념

작업 구현