sp_help_jobschedule (Transact-SQL)

ジョブのスケジュールに関する情報を返します。SQL Server Management Studio では、このスケジュールを使用して、自動化された操作を実行します。

トピック リンク アイコンTransact-SQL 構文表記規則

構文

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

引数

  • [ @job_id= ] job_id
    ジョブの識別番号を指定します。job_id のデータ型は uniqueidentifier で、既定値は NULL です。

  • [ @job_name= ] 'job_name'
    ジョブの名前を指定します。job_name のデータ型は sysname で、既定値は NULL です。

    注意

    job_id または job_name を指定する必要があります。両方を指定することはできません。

  • [ @schedule_name= ] 'schedule_name'
    ジョブのスケジュール アイテムの名前を指定します。schedule_name のデータ型は sysname で、既定値は NULL です。

  • [ @schedule_id= ] schedule_id
    ジョブのスケジュール アイテムの識別番号を指定します。schedule_id のデータ型は int で、既定値は NULL です。

  • [ @include_description= ] include_description
    結果セットにスケジュールの説明を含めるかどうかを指定します。include_description のデータ型は bit で、既定値は 0 です。include_description が 0 の場合は、スケジュールの説明が結果セットに含まれません。include_description が 1 の場合は、スケジュールの説明が結果セットに含まれます。

リターン コードの値

0 (成功) または 1 (失敗)

結果セット

列名

データ型

説明

schedule_id

int

スケジュール識別番号。

schedule_name

sysname

スケジュールの名前。

enabled

int

スケジュールが有効な場合は 1、有効でない場合は 0

freq_type

int

ジョブを実行する頻度を示す値。

1 = 1 回

4 = 毎日

8 = 毎週

16 = 毎月

32 = freq_interval に応じて毎月

64 = SQLServerAgent サービスの起動時に実行

freq_interval

int

ジョブを実行する日数。値は freq_type の値により異なります。詳細については、「sp_add_schedule (Transact-SQL)」を参照してください。

freq_subday_type

int

freq_subday_interval の単位。詳細については、「sp_add_schedule (Transact-SQL)」を参照してください。

freq_subday_interval

int

freq_subday_type 期間の数。ジョブの実行間隔を示します。詳細については、「sp_add_schedule (Transact-SQL)」を参照してください。

freq_relative_interval

int

毎月、freq_interval に基づいて定期ジョブを実行します。詳細については、「sp_add_schedule (Transact-SQL)」を参照してください。

freq_recurrence_factor

int

定期ジョブの実行間隔 (月単位)。

active_start_date

int

スケジュールをアクティブにした日付。

active_end_date

int

スケジュールの終了日。

active_start_time

int

スケジュールを開始する時刻。

active_end_time

int

スケジュールを終了する時刻。

date_created

datetime

スケジュールを作成した日付。

schedule_description

nvarchar(4000)

msdb.dbo.sysschedules の値から取得される英語によるスケジュールの説明。include_description が 0 の場合、この列には説明が要求されていないことを示すテキストが含まれます。

next_run_date

int

スケジュールで次にジョブを実行する日付。

next_run_time

int

スケジュールで次にジョブを実行する時刻。

schedule_uid

uniqueidentifier

スケジュールの識別子。

job_count

int

返されたジョブの数。

注意

sp_help_jobschedule では、msdbdbo.sysjobschedules システム テーブルおよび dbo.sysschedules システム テーブルからの値が返されます。sysjobschedules は 20 分ごとに更新されます。そのため、このストアド プロシージャから返される値に影響が生じることがあります。

説明

sp_help_jobschedule のパラメータは、限られた組み合わせでのみ使用できます。schedule_id が指定されている場合、job_id および job_name は両方とも指定できません。それ以外の場合、job_id パラメータまたは job_name パラメータは、schedule_name と組み合わせて使用できます。

権限

固定サーバー ロール sysadmin のメンバシップが必要です。他のユーザーには、msdb データベースにおける次のいずれかの SQL Server エージェント固定データベース ロールが許可されている必要があります。

  • SQLAgentUserRole

  • SQLAgentReaderRole

  • SQLAgentOperatorRole

これらのロールの権限に関する詳細については、「SQL Server エージェントの固定データベース ロール」を参照してください。

SQLAgentUserRole のメンバは、自分が所有しているジョブ スケジュールのプロパティだけを表示できます。

A. 特定のジョブのジョブ スケジュールを返す

次の例では、BackupDatabase という名前のジョブのスケジュール情報を返します。

USE msdb ;
GO

EXEC dbo.sp_help_jobschedule
    @job_name = N'BackupDatabase' ;
GO

B. 特定のスケジュールのジョブ スケジュールを返す

次の例では、NightlyJobs という名前のスケジュールと、RunReports という名前のジョブの情報を返します。

USE msdb ;
GO

EXEC dbo.sp_help_jobschedule 
    @job_name = N'RunReports',
    @schedule_name = N'NightlyJobs' ;
GO

C. 特定スケジュールのジョブ スケジュールとスケジュール説明を返す

次の例では、NightlyJobs という名前のスケジュールと、RunReports という名前のジョブの情報を返します。返される結果セットには、スケジュールの説明が含まれます。

USE msdb ;
GO

EXEC dbo.sp_help_jobschedule
    @job_name = N'RunReports',
    @schedule_name = N'NightlyJobs',
    @include_description = 1 ;
GO