我们都知道,凡是数据库都会尽量把使用过的数据页缓存到内存中,以便下次使用时能尽快的被获取,SQL Server也不例外。但是对于DBCC CHECK命令也是如此吗?你猜?
我用我的测试环境中最大的一张表,202兆,进行测试。
首先我们清空缓存,然后执行dbcc checktable,查看DataPage和FreePage发生了什么变化
dbcc dropcleanbuffers go dbcc checktable('t_test') go
结论:DBCC Check命令虽然也会毫无例外的使用DataPage的空间,但是却不进行缓存,而是执行完毕后马上释放掉了,呵呵,有点意思。