sys.fn_PageResCracker (Transact-SQL)

適用於: SQL Server 2019 (15.x)

傳回指定 db_idpage_resource 值的 、 file_idpage_id

Transact-SQL 語法慣例

語法

sys.fn_PageResCracker ( page_resource )  

引數

page_resource
這是資料庫頁面資源的 8 位元組十六進位格式。

傳回的資料表

資料行名稱 資料類型 描述
db_id int 資料庫識別碼
file_id int 檔案識別碼
page_id int 頁面識別碼

備註

sys.fn_PageResCracker 用來將資料庫頁面的 8 位元組十六進位表示轉換成包含頁面資料庫識別碼、檔案識別碼和頁面識別碼的資料列集。

您可以從 sys.dm_exec_requests (Transact-SQL) 動態管理檢視或 sys.sysprocesses (Transact-SQL) 系統檢視的資料 行取得有效的頁面資源 page_resource 。 如果使用不正確頁面資源,則傳回為 Null。
的主要用途 sys.fn_PageResCracker 是協助這些檢視與 sys.dm_db_page_info (Transact-SQL) 動態管理函式之間的聯結,以取得頁面的相關資訊,例如其所屬的物件。

權限

使用者需要 VIEW SERVER STATE 伺服器上的許可權。

範例

sys.fn_PageResCracker 式可以與 sys.dm_db_page_info (Transact-SQL) 搭配 使用, 以針對 SQL Server 中的頁面相關等候和封鎖進行疑難排解。 下列腳本是一個範例,說明如何使用這些函式,收集目前正在等候某些頁面資源類型之所有使用中要求的資料庫頁面資訊。

SELECT page_info.* 
FROM sys.dm_exec_requests AS d  
CROSS APPLY sys.fn_PageResCracker (d.page_resource) AS r  
CROSS APPLY sys.dm_db_page_info(r.db_id, r.file_id, r.page_id, 'DETAILED') AS page_info

另請參閱

sys.dm_db_page_info (Transact-SQL)
sys.sysprocesses (Transact-SQL)
sys.dm_exec_requests (Transact-SQL)