回答

0

您可以查詢sys.dm_exec_connections以獲取給定連接的上次執行查詢的句柄,然後用DBCC FREEPROCCACHE驅逐該計劃。確保你在另一個連接上執行此操作。

或者,使用WITH RECOMPILEOPTION(RECOMPILE)不緩存計劃在所有:

http://blogs.msdn.com/b/sqlmeditation/archive/2013/01/01/is-it-really-quot-recompile-quot-or-a-quot-private-temporary-compile-quot.aspx

+0

我想這在我的本地機器現在。當我運行以下內容: 'CHECKPOINT; GO DBCC DROPCLEANBUFFERS; GO DBCC FREEPROCCACHE; GO DBCC FREESESSIONCACHE; GO' 它首先需要一分鐘的時間來完成查詢,當我運行** DBCC FREEPROCCACHE **或** RECOMPILE **東西時,第二次查詢時間不到一秒鐘。是否還有別的東西被保存而不是緩存,使得它如此之快? (第二次運行時減少1秒) – MilkTea027

+0

是的,數據被緩存,每次重複檢查點/丟棄緩衝區例程。 – dean

+0

本地沒問題,但在服務器,但我不能清除所有的緩存..有沒有辦法讓特定的查詢運行就像它的第一次查詢? – MilkTea027