SQL:查找上次完整性检查date

有没有办法来检查每个数据库的最后一次完整性检查运行?

我知道服务启动时它检查这些值,所以它们存在,他们可能写在数据库头信息。

顺便说一下,我想要一个T-SQL解决scheme。

您可以从数据库的引导页面获取此信息。 即页面ID 9。

DBCC TRACEON (3604) GO DBCC PAGE (DatabaseName, 1, 9, 3) GO 

当SQL Server启动时,它会将最后一个DBCC CHECKDBdate作为参考消息报告。 它没有运行命令,只是报告。

从T-SQL中看到这个执行

 EXEC sp_readerrorlog 0, 1, 'CHECKDB' 

这个过程需要四个参数:

  1. 要读取的错误日志文件的值:0 =当前,1 =存档#1,2 =存档#2等…
  2. 日志文件types:1或NULL =错误日志,2 = SQL代理日志
  3. searchstring1:您想要search的string
  4. searchstring2:要search的string2,以进一步优化结果