jobs.sp_purge_jobhistory (Azure エラスティック ジョブ) (Transact-SQL)
適用対象:Azure SQL Database
Azure SQL Database の Azure エラスティック ジョブ サービス内のジョブの 履歴レコードを削除します。
このストアド プロシージャは、SQL Server エージェント サービスの sp_purge_jobhistory
SQL Server の同様のオブジェクトと名前を共有します。 SQL Server エージェントバージョンの詳細については、「sp_purge_jobhistory (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_idまたはjob_nameを指定する必要がありますが、両方を指定することはできません。
@job_id
レコードを削除するジョブのジョブ ID 番号。 job_idは uniqueidentifier で、既定値は NULL
. job_idまたはjob_nameを指定する必要がありますが、両方を指定することはできません。
@oldest_date
履歴の中で保持する最も古いレコードを指定します。 oldest_dateはDATETIME2で、既定値は NULL
. oldest_dateを指定すると、sp_purge_jobhistory
指定した値より古いレコードのみが削除されます。
エラスティック ジョブのすべての時間は、UTC タイム ゾーンが適用されます。
リターン コードの値
0 (成功) または 1 (失敗)
解説
エラスティック ジョブ履歴は、45 日を超える場合に自動的に削除されます。
アクセス許可
既定では、このストアド プロシージャを実行できるのは、 sysadmin 固定サーバー ロールのメンバーです。 このストアド プロシージャを使って、他のユーザーが所有するジョブの属性を編集できるのは、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';
関連するコンテンツ
フィードバック
https://aka.ms/ContentUserFeedback」を参照してください。
以下は間もなく提供いたします。2024 年を通じて、コンテンツのフィードバック メカニズムとして GitHub の issue を段階的に廃止し、新しいフィードバック システムに置き換えます。 詳細については、「フィードバックの送信と表示