sys.fn_PageResCracker (Transact-SQL)

Gilt für: SQL Server 2019 (15.x)

Gibt die db_id, file_idund page_id für den angegebenen page_resource Wert zurück.

Transact-SQL-Syntaxkonventionen

Syntax

sys.fn_PageResCracker ( page_resource )  

Argumente

page_resource
Das 8-Byte-Hexadezimalformat einer Datenbankseitenressource.

Zurückgegebene Tabellen

Spaltenname Datentyp BESCHREIBUNG
db_id int Datenbank-ID
file_id int Datei-ID
page_id int Seiten-ID

Bemerkungen

sys.fn_PageResCracker wird verwendet, um die 8-Byte-Hexadezimaldarstellung einer Datenbankseite in ein Rowset zu konvertieren, das die Datenbank-ID, die Datei-ID und die Seiten-ID der Seite enthält.

Sie können eine gültige Seitenressource aus der page_resource Spalte der dynamischen Verwaltungssicht sys.dm_exec_requests (Transact-SQL) oder der Systemsicht sys.sysprocesses (Transact-SQL) abrufen. Wenn eine ungültige Seitenressource verwendet wird, ist die Rückgabe NULL.
Die primäre Verwendung von sys.fn_PageResCracker besteht darin, Verknüpfungen zwischen diesen Ansichten und der dynamischen Verwaltungsfunktion sys.dm_db_page_info (Transact-SQL) zu erleichtern, um Informationen über die Seite zu erhalten, z. B. das Objekt, zu dem sie gehört.

Berechtigungen

Der Benutzer benötigt VIEW SERVER STATE die Berechtigung auf dem Server.

Beispiele

Die sys.fn_PageResCracker Funktion kann in Verbindung mit sys.dm_db_page_info (Transact-SQL) verwendet werden, um seitenbezogene Wartezeiten und Blockierungen in SQL Server zu beheben. Das folgende Skript ist ein Beispiel dafür, wie Sie diese Funktionen verwenden können, um Datenbankseiteninformationen für alle aktiven Anforderungen zu sammeln, die derzeit auf eine Art von Seitenressource warten.

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

Weitere Informationen

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