共用方式為


jobs.job_executions (Azure 彈性作業) (Transact-SQL)

適用於:Azure SQL 資料庫

包含適用於 Azure SQL 資料庫Azure 彈性作業服務中作業的作業執行狀態和歷程記錄。

資料行名稱 資料類型 描述
job_execution_id UNIQUEIDENTIFIER 作業執行的執行個體唯一識別碼。
job_name nvarchar(128) 作業的名稱。
job_id UNIQUEIDENTIFIER 作業的唯一識別碼。
job_version int 作業的版本 (每次修改作業時,都會自動更新)。
step_id int 步驟的唯一 (針對這項作業) 識別碼。 NULL 表示此執行是父作業執行。
is_active bit 表示資訊是使用中還是非使用中。 1 表示使用中工作,並 0 表示非使用中。
lifecycle nvarchar(50) 指出作業狀態的值。 如需可能的值,請參閱 生命周期 數據表。
create_time datetime2(7) 建立作業的日期和時間。
start_time datetime2(7) 作業開始執行的日期和時間。 NULL 如果工作尚未執行,則為 。
end_time datetime2(7) 作業執行完成的日期和時間。 NULL 如果工作尚未執行或尚未完成執行,則為 。
current_attempts int 重試步驟的次數。 父作業是 0,子作業執行將會根據執行原則,或 1 更新。
current_attempt_start_time datetime2(7) 作業開始執行的日期和時間。 NULL 表示此執行是父作業執行。
next_attempt_start_time datetime2(7) 作業將開始下一次執行的日期和時間。 NULL 表示此執行是父作業執行。
last_message nvarchar(max) 作業或步驟記錄訊息。
target_type nvarchar(128) 目標資料庫或資料庫集合的類型,包括伺服器中的所有資料庫、彈性集區或資料庫中的所有資料庫。 的有效值為 target_type SqlServerSqlElasticPoolSqlDatabaseNULL 表示此執行是父作業執行。
target_id UNIQUEIDENTIFIER 目標群組成員的唯一識別碼。 NULL 表示此執行是父作業執行。
target_group_name nvarchar(128) 目標群組的名稱。 NULL 表示此執行是父作業執行。
target_server_name nvarchar(256) 目標群組中包含的伺服器名稱。 只有當 是 SqlServertarget_type,才指定 。 NULL 表示此執行是父作業執行。
target_database_name nvarchar(128) 目標群組中包含的資料庫名稱。 只有當 是 SqlDatabasetarget_type,才指定 。 NULL 表示此執行是父作業執行。

下表列出 中 lifecycle可能的作業執行狀態:

State 描述
建立日期 作業執行剛建立,且尚未開始執行。
InProgress 作業執行目前正在進行中。
WaitingForRetry 作業執行無法完成其動作,正在等待重試。
已成功 作業執行已順利完成。
SucceededWithSkipped 作業執行已順利完成,但已略過部分子系。
失敗 作業執行失敗,並用盡其重試。
TimedOut 作業執行逾時。
Canceled 作業執行已取消。
已略過 已略過作業執行,因為已在相同的目標上執行相同作業步驟的另一個執行。
WaitingForChildJobExecutions 作業執行正在等候其子系執行完成。

權限

jobs_reader角色的成員可以從此檢視中選取。 如需詳細資訊,請參閱 Azure SQL 資料庫中的彈性作業

警告

您不應該更新作業資料庫中 的內部目錄檢視。 手動變更這些目錄檢視可能會損毀作業資料庫並導致失敗。 這些檢視僅適用於唯讀查詢。 您可以在作業資料庫上使用預存程式。

備註

彈性作業的所有時間都在UTC時區。

監視作業執行狀態

下列範例說明如何檢視所有作業的執行狀態詳細資料。

連結至 job_database ,然後執行下列命令:

--Connect to the job database specified when creating the job agent

--View top-level execution status for the job named 'ResultsPoolJob'
SELECT * FROM jobs.job_executions
WHERE job_name = 'ResultsPoolsJob' and step_id IS NULL
ORDER BY start_time DESC;

--View all top-level execution status for all jobs
SELECT * FROM jobs.job_executions WHERE step_id IS NULL
ORDER BY start_time DESC;

--View all execution statuses for job named 'ResultsPoolsJob'
SELECT * FROM jobs.job_executions
WHERE job_name = 'ResultsPoolsJob'
ORDER BY start_time DESC;

-- View all active executions
SELECT * FROM jobs.job_executions
WHERE is_active = 1
ORDER BY start_time DESC;

執行作業並監視狀態

下列範例示範如何立即啟動彈性作業,做為手動、非計劃性動作。

連結至 job_database ,然後執行下列命令:

--Connect to the job database specified when creating the job agent

-- Execute the latest version of a job and receive the execution id
DECLARE @je uniqueidentifier;
EXEC jobs.sp_start_job 'CreateTableTest', @job_execution_id = @je output;
SELECT @je;

-- Monitor progress

SELECT * FROM jobs.job_executions WHERE job_execution_id = @je;