我們都知道,凡是數據庫都會盡量把使用過的數據頁緩存到內存中,以便下次使用時能盡快的被獲取,SQL Server也不例外。但是對於DBCC CHECK命令也是如此嗎?你猜?
我用我的測試環境中最大的一張表,202兆,進行測試。
首先我們清空緩存,然後執行dbcc checktable,查看DataPage和FreePage發生了什麼變化
dbcc dropcleanbuffers go dbcc checktable('t_test') go
結論:DBCC Check命令雖然也會毫無例外的使用DataPage的空間,但是卻不進行緩存,而是執行完畢後馬上釋放掉了,呵呵,有點意思。