我们如何删除SQL代理作业历史记录(仅针对一个作业),仅删除1天的记录呢?
例如,我只想删除9月1日的记录。
例如,我只想删除9月1日的记录。
Microsoft提供了sp_purge_jobhistory用于清除作业历史记录,其中一个参数是日期。
sp_purge_jobhistory
{ [ @job_name = ] 'job_name' |
| [ @job_id = ] job_id }
[ , [ @oldest_date = ] oldest_date ]
DELETE FROM msdb.dbo.sysjobhistory
WHERE ((run_date < @datepart) OR
(run_date <= @datepart AND run_time < @timepart))
所以你可以通过传递 run_date = date
来实现,你需要删除它。