다음을 통해 공유


sp_add_jobschedule(Transact-SQL)

작업의 일정을 만듭니다.

항목 링크 아이콘Transact-SQL 구문 표기 규칙

구문

sp_add_jobschedule [ @job_id = ] job_id, | [ @job_name = ] 'job_name', [ @name = ] 'name'
     [ , [ @enabled = ] enabled_flag ]
     [ , [ @freq_type = ] frequency_type ]
     [ , [ @freq_interval = ] frequency_interval ]
     [ , [ @freq_subday_type = ] frequency_subday_type ]
     [ , [ @freq_subday_interval = ] frequency_subday_interval ]
     [ , [ @freq_relative_interval = ] frequency_relative_interval ]
     [ , [ @freq_recurrence_factor = ] frequency_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 ]
     [ , [ @schedule_id = ] schedule_id OUTPUT ]

인수

  • [ @job_id= ] job_id
    일정을 추가한 작업의 ID입니다. job_id는 uniqueidentifier이며 기본값은 없습니다.

  • [ @job_name= ] 'job_name'
    일정을 추가할 작업의 이름입니다. job_name은 nvarchar(128)이며 기본값은 없습니다.

    [!참고]

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

  • [ @name= ] 'name'
    일정 이름입니다. name은 nvarchar(128)이며 기본값은 없습니다.

  • [ @enabled= ] enabled_flag
    일정의 현재 상태를 나타냅니다. enabled_flag는 tinyint이며 기본값은 1(사용)입니다. 0이 지정되어 있는 경우에는 일정을 사용할 수 없습니다. 일정을 사용하지 않으면 작업이 실행되지 않습니다.

  • [ @freq_type= ] frequency_type
    작업 실행 시기를 나타내는 값입니다. frequency_type은 int이고 기본값은 0이며 다음 값 중 하나를 사용할 수 있습니다.

    설명

    1

    한 번

    4

    매일

    8

    매주

    16

    매월

    32

    매월(frequency_interval.에 상대적임)

    64

    SQL Server 에이전트 서비스를 시작할 때 실행됩니다.

    128

    컴퓨터가 유휴 상태일 때 실행됩니다.

  • [ @freq_interval= ] frequency_interval
    작업이 실행되는 날짜입니다. frequency_interval은 int이고 기본값은 0이며 다음 표에 표시된 것과 같이 frequency_type의 값에 따라 달라집니다.

    결과

    1(한 번)

    frequency_interval은 사용되지 않습니다.

    4(매일)

    매 frequency_interval일

    8(매주)

    frequency_interval은 다음 중 하나 이상이 될 수 있습니다. 이 경우 OR 논리 연산자와 함께 사용할 수 있습니다.

    1 = 일요일

    2 = 월요일

    4 = 화요일

    8 = 수요일

    16 = 목요일

    32 = 금요일

    64 = 토요일

    16(매월)

    월 중 frequency_interval일

    32(매월 상대적)

    frequency_interval은 다음 중 하나일 수 있습니다.

    1 = 일요일

    2 = 월요일

    3 = 화요일

    4 = 수요일

    5 = 목요일

    6 = 금요일

    7 = 토요일

    8 = 일

    9 = 평일

    10 = 주말

    64(SQL Server 에이전트 서비스를 시작할 때)

    frequency_interval은 사용되지 않습니다.

    128

    frequency_interval은 사용되지 않습니다.

  • [ @freq_subday_type= ] frequency_subday_type
    frequency_subday_interval의 단위를 지정합니다. frequency_subday_type은 int이고 기본값은 없으며 다음 값 중 하나를 사용할 수 있습니다.

    설명(단위)

    0x1

    지정된 시간

    0x4

    0x8

  • [ @freq_subday_interval= ] frequency_subday_interval
    각 작업 실행 사이에 발생할 frequency_subday_type 기간 수입니다. frequency_subday_interval은 int이며 기본값은 0입니다.

  • [ @freq_relative_interval= ] frequency_relative_interval
    frequency_type이 32로 설정되어 있으면 frequency_interval을 추가로 정의합니다(매월 상대적).

    frequency_relative_interval은 int이며 기본값은 없지만 다음 값 중 하나를 사용할 수 있습니다.

    설명(단위)

    1

    첫째

    2

    둘째

    4

    셋째

    8

    넷째

    16

    마지막

    frequency_relative_interval은 간격의 발생 빈도를 나타냅니다. 예를 들어 frequency_relative_interval을 2로 설정하고 frequency_type을 32로 설정하고 frequency_interval을 3으로 설정하면 예약된 작업은 매달 두 번째 화요일에 발생합니다.

  • [ @freq_recurrence_factor= ] frequency_recurrence_factor
    예약된 작업 실행 사이에 발생하는 주 또는 월의 수입니다. frequency_recurrence_factor는 frequency_type이 8, 16 또는 32로 설정된 경우에만 사용됩니다. frequency_recurrence_factor는 int이며 기본값은 0입니다.

  • [ @active_start_date= ] active_start_date
    작업 실행을 시작할 수 있는 날짜입니다. active_start_date는 int이며 기본값은 없습니다. 날짜 형식은 YYYYMMDD입니다. active_start_date가 설정된 경우에는 반드시 날짜가 19900101 이후여야 합니다.

    일정을 만든 다음 시작 날짜를 검토하여 날짜가 제대로 되어 있는지 확인하십시오. 자세한 내용은 일정을 만들고 작업에 연결의 "시작 날짜 예약" 섹션을 참조하십시오.

  • [ @active_end_date= ] active_end_date
    작업 실행을 중지할 수 있는 날짜입니다. active_end_date는 int이며 기본값은 없습니다. 날짜 형식은 YYYYMMDD입니다.

  • [ @active_start_time= ] active_start_time
    active_start_date와 active_end_date 사이에서 작업 실행이 시작되는 시간입니다. active_start_time은 int이며 기본값은 없습니다. 시간 형식은 HHMMSS이며 24시간제를 사용합니다.

  • [ **@active_end_time=**active_end_time
    active_start_date와 active_end_date 사이에서 작업 실행이 종료되는 시간입니다. active_end_time은 int이며 기본값은 없습니다. 시간 형식은 HHMMSS이며 24시간제를 사용합니다.

  • [ @schedule_id=schedule_idOUTPUT
    성공적으로 생성된 일정에 할당되는 일정 ID 번호입니다. schedule_id는 int 형식의 출력 변수이며 기본값은 없습니다.

  • [ @schedule_uid= ] schedule_uidOUTPUT
    일정의 고유 식별자입니다. schedule_uid는 uniqueidentifier 형식의 변수입니다.

반환 코드 값

0(성공) 또는 1(실패)

결과 집합

없음

주의

이제 작업 일정을 작업과 독립적으로 관리할 수 있습니다. 작업에 일정을 추가하려면 sp_add_schedule을 사용하여 일정을 만들고 sp_attach_schedule을 사용하여 작업에 일정을 연결합니다.

사용 권한

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

  • SQLAgentUserRole

  • SQLAgentReaderRole

  • SQLAgentOperatorRole

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

변경 내역

업데이트된 내용

일정을 만든 다음 시작 날짜 매개 변수의 시작 날짜를 확인해야 한다는 정보를 추가했습니다.