我们如何在一天内删除SQL代理作业历史记录(作业)?
例如,我只想删除9月1日
答案 0 :(得分:1)
sp_purge_jobhistory由Microsoft提供,用于清除作业历史记录,并将日期作为参数之一。
sp_purge_jobhistory
{ [ @job_name = ] 'job_name' |
| [ @job_id = ] job_id }
[ , [ @oldest_date = ] oldest_date ]
现在查看日期文档,请在下面说明
历史上最古老的记录。 oldest_date是datetime,默认值为NULL。指定oldest_date时,sp_purge_jobhistory仅删除早于指定值的记录。
根据以上文档,您无法删除一天..
但是看一下源代码,我发现它只是检查权限并在行下面运行
DELETE FROM msdb.dbo.sysjobhistory
WHERE ((run_date < @datepart) OR
(run_date <= @datepart AND run_time < @timepart))
所以你可以传递,run_date =date
你需要删除