銷售: 1-800-867-1380

sys.dm_exec_cached_plans

更新日期: 2011年4月

這個主題已過時。您可以在 Transact-SQL 參考 (資料庫引擎) 中找到最新版本。

Important重要事項
本主題並未進行維護。如需最新版本,請參閱 sys.dm_exec_cached_plans

針對 虛擬機器建立 快取的每個查詢計畫傳回一個資料列,加快查詢執行的速度。您可以使用這個動態管理檢視尋找快取的查詢計畫、快取的查詢文字、快取計畫所使用的記憶體,以及快取計畫的重複使用計數。

在 Microsoft Azure SQL Database 中,動態管理檢視無法公開會影響資料庫內含項目的資訊或是有關使用者可存取之其他資料庫的資訊。為了避免公開此資訊,包含不屬於連接租用戶之資料的每一個資料列都會被篩選掉。此外,下列資料行中的值會經過篩選,資料行值會設定為 NULL

  • memory_object_address

  • pool_id

 

資料行名稱 資料類型 描述

bucketid

int

這是快取項目之雜湊值區的識別碼。這個值的範圍從 0 開始,一直到該快取類型的雜湊資料表大小。

若為 SQL 計畫和物件計畫快取,雜湊資料表在 32 位元系統上最大為 10007,在 64 位元系統上最大為 40009。若為 Bound Trees 快取,雜湊資料表在 32 位元系統上最大為 1009,在 64 位元系統上最大為 4001。若為擴充預存程序快取,雜湊資料表在 32 位元和 64 位元系統上最大為 127。

refcounts

int

參考這個快取物件的快取物件數目。Refcounts 必須至少為 1,快取中才能有項目。

usecounts

int

已經查閱快取物件的次數。當參數化查詢在快取中找到計畫時,不會累加。但是,使用執行程序表時,可能會累加多次。

size_in_bytes

int

快取物件所耗用的位元組數目。

memory_object_address

varbinary(8)

快取項目的記憶體位址。這個值可以與 sys.dm_os_memory_objects 一起使用,以取得快取計畫的記憶體細分,也可以與 sys.dm_os_memory_cache_entries 一起使用,以取得快取項目的成本。

這個資料行值會經過篩選。此值設定為 NULL

cacheobjtype

nvarchar(34)

快取中的物件類型。這個值可以是下列其中一個值:

  • 編譯的計畫

  • 已編譯計畫虛設常式

  • 剖析樹狀結構

  • 擴充程序

  • CLR 編譯的函數

  • CLR 編譯的程序

objtype

nvarchar(16)

物件的類型。這個值可以是下列其中一個值:

 

描述

Proc

預存程序

Prepared

準備陳述式

Adhoc

隨選查詢 1

ReplProc

複寫篩選程序

觸發程序

觸發程序

檢視表

檢視表

Default

Default

UsrTab

使用者資料表

SysTab

系統資料表

Check

CHECK 條件約束

規則

規則

plan_handle

varbinary(64)

記憶體中計畫的識別碼。這個識別碼是暫時性的,只有當計畫留在快取時才會保留。這個值可以與下列動態管理函數一起使用:

sys.dm_exec_sql_text

sys.dm_exec_query_plan

sys.dm_exec_plan_attributes

pool_id

int

計算此計畫記憶體使用量代表之資源集區的識別碼。

這個資料行值會經過篩選。此值設定為 NULL

1  是指利用 osqlsqlcmd (而非遠端程序呼叫) 提交為語言事件的 Transact-SQL。

需要伺服器的 VIEW DATABASE STATE 權限。無法從 master 資料庫查詢。如需詳細資訊,請參閱<Dynamic Management Objects>。

本文對您有任何幫助嗎?
(剩餘 1500 個字元)
感謝您提供意見
顯示:
© 2014 Microsoft