다음을 통해 공유


sp_attach_schedule(Transact-SQL)

작업의 일정을 설정합니다.

구문

sp_attach_schedule
     { [ @job_id = ] job_id | [ @job_name = ] 'job_name' } , 
     { [ @schedule_id = ] schedule_id 
     | [ @schedule_name = ] 'schedule_name' }

인수

  • [ @job_id= ] job_id
    일정을 추가한 작업의 ID입니다. job_iduniqueidentifier이며 기본값은 NULL입니다.
  • [ @job_name = ] 'job_name'
    일정을 추가한 작업의 이름입니다. job_namesysname이며 기본값은 NULL입니다.

    [!참고] job_id 또는 job_name 중 하나를 지정해야 하며 둘 다를 지정할 수는 없습니다.

  • [ @schedule_id = ] schedule_id
    작업에 대해 설정할 일정의 ID입니다. schedule_idint이며 기본값은 NULL입니다.
  • [ @schedule_name = ] 'schedule_name'
    작업에 대해 설정할 일정의 이름입니다. schedule_namesysname이며 기본값은 NULL입니다.

    [!참고] schedule_id 또는 schedule_name 중 하나를 지정해야 하며 둘 다를 지정할 수는 없습니다.

주의

일정과 작업의 소유자는 같아야 합니다.

일정은 둘 이상의 작업에 대해 설정할 수 있습니다. 작업은 둘 이상의 일정으로 실행할 수 있습니다.

이 저장 프로시저는 msdb 데이터베이스에서 실행되어야 합니다.

사용 권한

기본적으로 sysadmin 고정 서버 역할의 멤버는 이 저장 프로시저를 실행할 수 있습니다. 다른 사용자는 msdb 데이터베이스의 다음 SQL Server 에이전트 고정 데이터베이스 역할 중 하나를 부여 받아야 합니다.

  • SQLAgentUserRole
  • SQLAgentReaderRole
  • SQLAgentOperatorRole

이러한 역할의 사용 권한에 대한 자세한 내용은 SQL Server 에이전트 고정 데이터베이스 역할을 참조하십시오.

Microsoft SQL Server는 사용자가 작업과 일정을 둘 다 소유하고 있는지 확인합니다.

다음 예에서는 NightlyJobs라는 일정을 만듭니다. 이 일정을 사용하는 작업은 서버 시간이 01:00일 때 매일 실행됩니다. 이 예에서는 BackupDatabase 작업 및 RunReports 작업에 일정을 추가합니다.

[!참고] 이 예에서는 BackupDatabase 작업 및 RunReports 작업이 이미 있다고 가정합니다.

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

참고 항목

참조

sp_add_schedule(Transact-SQL)
sp_detach_schedule(Transact-SQL)
sp_delete_schedule(Transact-SQL)

도움말 및 정보

SQL Server 2005 지원 받기