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\_id**OUTPUT**
    일정을 성공적으로 만든 경우 일정에 할당되는 일정 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 에이전트 고정 데이터베이스 역할을 참조하십시오.

참고 항목

참조

SQL Server 에이전트 저장 프로시저(Transact-SQL)

sp_add_schedule(Transact-SQL)

sp_update_schedule(Transact-SQL)

sp_delete_schedule(Transact-SQL)

sp_help_schedule(Transact-SQL)

sp_attach_schedule(Transact-SQL)

개념

일정을 만들고 작업에 연결

작업 예약

일정 만들기