Partage via


sys.dm_exec_input_buffer (Transact-SQL)

S’applique à : SQL Server 2014 Azure SQL DatabaseNon pris en charge. Azure Synapse Analytics Analytics Non pris en charge. Platform System (PDW)

Retourne des informations sur les instructions soumises à une instance de SQL Server.

Syntaxe

sys.dm_exec_input_buffer ( session_id , request_id )

Arguments

session_id ID de session qui exécute le lot à rechercher. session_id est petite. session_id pouvez être obtenu à partir des objets de gestion dynamique suivants :

request_id Le request_id de sys.dm_exec_requests. request_id est int.

Table retournée

Nom de la colonne Type de données Description
event_type nvarchar (256) Type d’événement dans la mémoire tampon d’entrée pour le spid donné.
parameters smallint Tous les paramètres fournis pour l’instruction.
event_info nvarchar(max) Texte de l’instruction dans la mémoire tampon d’entrée pour le spid donné.

autorisations

Sur SQL Server, si l’utilisateur dispose de l’autorisation VIEW SERVER STATE, l’utilisateur voit toutes les sessions en cours d’exécution sur l’instance de SQL Server ; sinon, l’utilisateur voit uniquement la session active.

Important

L’exécution de cette vue dynamique en dehors de SQL Server Management Studio sur SQL Server sans autorisations VIEW SERVER STATE (par exemple, dans un déclencheur, une procédure stockée ou une fonction) génère une erreur d’autorisation sur la base de données master.

Sur SQL Database, si l’utilisateur est propriétaire de la base de données, l’utilisateur voit toutes les sessions en cours d’exécution sur la base de données SQL ; sinon, l’utilisateur voit uniquement la session active.

Important

L’exécution de cette vue dynamique en dehors de SQL Server Management Studio sur Azure SQL Database sans autorisations de propriétaire (par exemple, dans un déclencheur, une procédure stockée ou une fonction) génère une erreur d’autorisation sur la base de données master.

Autorisations pour SQL Server 2022 (et versions plus récentes)

Nécessite l’autorisation VIEW SERVER PERFORMANCE STATE sur le serveur.

Notes

Cette fonction de gestion dynamique peut être utilisée conjointement avec sys.dm_exec_sessions ou sys.dm_exec_requests en effectuant CROSS APPLY.

Exemples

R. Exemple simple

L’exemple suivant illustre le passage d’un ID de session (SPID) et d’un ID de requête à la fonction.

SELECT * FROM sys.dm_exec_input_buffer (52, 0);
GO

B. Utilisation de cross apply to additional information

L’exemple suivant répertorie la mémoire tampon d’entrée pour les sessions utilisateur.

SELECT es.session_id, ib.event_info
FROM sys.dm_exec_sessions AS es
CROSS APPLY sys.dm_exec_input_buffer(es.session_id, NULL) AS ib
WHERE es.is_user_process = 1;
GO

Voir aussi