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

適用於:Azure SQL 資料庫

拿掉適用於 Azure SQL 資料庫Azure 彈性作業服務中作業的記錄記錄。

這個預存程式會與 SQL Server Agent 服務中的類似物件共用 的名稱 sp_purge_jobhistory 。 如需 SQL Server Agent 版本的相關信息,請參閱 sp_purge_jobhistory (Transact-SQL)

Transact-SQL 語法慣例

語法

[jobs].sp_purge_jobhistory [ @job_name = ] 'job_name'
      [ , [ @job_id = ] job_id ]
      [ , [ @oldest_date = ] oldest_date []

引數

@job_name

這是要刪除記錄的作業名稱。 job_name為 nvarchar(128),預設值為 NULL必須指定job_idjob_name,但無法指定兩者。

@job_id

這是要刪除記錄之作業的作業識別碼。 job_id為 uniqueidentifier,預設值為 NULL必須指定job_idjob_name,但無法指定兩者。

@oldest_date

要保留在記錄中的最舊記錄。 oldest_date為 DATETIME2,預設值為 NULL。 指定oldest_datesp_purge_jobhistory只會移除比指定的值還舊的記錄。

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

傳回碼值

0 (成功) 或 1 (失敗)

備註

如果超過 45 天,就會自動刪除彈性作業歷程記錄。

權限

依預設,只有 系統管理員 (sysadmin) 固定伺服器角色的成員,才能夠執行這個預存程序。 只有系統管理員的成員可以使用此預存程序來編輯其他使用者所擁有的作業屬性。

範例

刪除舊作業歷程記錄

下列範例說明如何刪除特定日期之前的作業歷程記錄。

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

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

-- Delete history of a specific job's executions older than the specified date
EXEC jobs.sp_purge_jobhistory 
@job_name='ResultPoolsJob'
, @oldest_date='2016-07-01 00:00:00';
GO

刪除作業及其所有的作業歷程記錄

下列範例示範如何使用jobs.sp_delete_job和所有相關的作業歷程記錄來刪除作業

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

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

--Delete a job and all its history
EXEC jobs.sp_delete_job @job_name='ResultsPoolsJob';