sp_help_jobschedule (Transact-SQL)
適用於:SQL Server
傳回 SQL Server Management Studio 用來執行自動化活動之作業排程的相關信息。
語法
sp_help_jobschedule
[ [ @job_id = ] 'job_id' ]
[ , [ @job_name = ] N'job_name' ]
[ , [ @schedule_name = ] N'schedule_name' ]
[ , [ @schedule_id = ] schedule_id ]
[ , [ @include_description = ] include_description ]
[ ; ]
引數
[ @job_id = ] 'job_id'
作業標識碼。 @job_id為 uniqueidentifier,預設值為 NULL
。
必須指定@job_id或@job_name,但無法指定兩者。
[ @job_name = ] N'job_name'
作業的名稱。 @job_name為 sysname,預設值為 NULL
。
必須指定@job_id或@job_name,但無法指定兩者。
[ @schedule_name = ] N'schedule_name'
作業的排程項目名稱。 @schedule_name為 sysname,預設值為 NULL
。
[ @schedule_id = ] schedule_id
作業之排程項目的識別碼。 @schedule_id為 int,預設值為 NULL
。
[ @include_description = ] include_description
指定是否要在結果集中包含排程的描述。 @include_description為 bit,預設值為 0
。
- 當 為 時
0
,排程的描述不會包含在結果集中。 - 當 時
1
,排程的描述會包含在結果集中。
傳回碼值
0
(成功) 或 1
(失敗)。
結果集
資料行名稱 | 資料類型 | 描述 |
---|---|---|
schedule_id |
int | 排程標識碼。 |
schedule_name |
sysname | 排程的名稱。 |
enabled |
int | 是否啟用排程 (1 ) 或未啟用 (0 )。 |
freq_type |
int | 值,指出作業何時要執行。1 = 一次4 = 每日8 = 每周16 = 每月32 = 每月,相對於 freq_interval 64 = 在 SQL Server Agent 服務啟動時執行。 |
freq_interval |
int | 執行作業的天數。 值取決於的值 freq_type 。 如需詳細資訊,請參閱 sp_add_schedule。 |
freq_subday_type |
int | 的 freq_subday_interval 單位。 如需詳細資訊,請參閱 sp_add_schedule。 |
freq_subday_interval |
int | freq_subday_type 每個作業執行之間要發生的期間數。 如需詳細資訊,請參閱 sp_add_schedule。 |
freq_relative_interval |
int | 排程工作在每個月出現的 freq_interval 。 如需詳細資訊,請參閱 sp_add_schedule。 |
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
每隔 20 分鐘會傳回 更新中的 dbo.sysjobschedules
msdb.sysjobschedules
和 dbo.sysschedules
系統數據表值。 這可能會影響這個預存程式所傳回的值。
備註
的參數 sp_help_jobschedule
只能在特定組合中使用。 如果 指定了@schedule_id , 就無法指定@job_id 和 @job_name 。 否則, @job_id 或 @job_name 參數可以搭配 @schedule_name使用。
權限
此預存程式是由 db_owner 角色所擁有。 您可以授與 EXECUTE
任何用戶的許可權,但這些許可權可能會在 SQL Server 升級期間覆寫。
其他用戶必須在資料庫中獲得下列其中一個 SQL Server Agent 固定資料庫角色 msdb
:
- SQLAgentUserRole
- SQLAgentReaderRole
- SQLAgentOperatorRole
如需這些角色權限的詳細資訊,請參閱 SQL Server Agent 固定資料庫角色。
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