sys.dm_exec_input_buffer (Transact-SQL)

Si applica a: SQL Server 2014database SQL di AzureNot supported.azure Synapse Analytics Analytics Not supported. Platform System (PDW)

Restituisce informazioni sulle istruzioni inviate a un'istanza di SQL Server.

Sintassi

sys.dm_exec_input_buffer ( session_id , request_id )

Argomenti

session_id ID sessione che esegue il batch da cercare. session_id è smallint. session_id possono essere ottenuti dagli oggetti a gestione dinamica seguenti:

request_id Il request_id da sys.dm_exec_requests. request_id è int.

Tabella restituita

Nome colonna Tipo di dati Descrizione
event_type nvarchar(256) Tipo di evento nel buffer di input per lo spid specificato.
parameters smallint Tutti i parametri forniti per l'istruzione .
event_info nvarchar(max) Testo dell'istruzione nel buffer di input per lo spid specificato.

Autorizzazioni

In SQL Server, se l'utente dispone dell'autorizzazione VIEW edizione Standard RVER STATE, l'utente visualizzerà tutte le sessioni in esecuzione nell'istanza di SQL Server. In caso contrario, l'utente visualizzerà solo la sessione corrente.

Importante

L'esecuzione di questa DMV all'esterno di SQL Server Management Studio su SQL Server senza autorizzazioni VIEW edizione Standard RVER STATE (ad esempio in un trigger, una stored procedure o una funzione) genera un errore di autorizzazione nel database master.

In database SQL, se l'utente è il proprietario del database, l'utente visualizzerà tutte le sessioni in esecuzione nel database SQL; in caso contrario, l'utente visualizzerà solo la sessione corrente.

Importante

L'esecuzione di questa DMV all'esterno di SQL Server Management Studio su database SQL di Azure senza autorizzazioni di proprietario (ad esempio in un trigger, una stored procedure o una funzione) genera un errore di autorizzazione nel database master.

Autorizzazioni per SQL Server 2022 e versioni successive

È richiesta l'autorizzazione VIEW edizione Standard RVER PERFORMANCE STATE nel server.

Osservazioni:

Questa funzione a gestione dinamica può essere usata in combinazione con sys.dm_exec_sessions o sys.dm_exec_requests eseguendo CROSS APPLY.

Esempi

R. Esempio semplice

Nell'esempio seguente viene illustrato il passaggio di un ID sessione (SPID) e un ID richiesta alla funzione.

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

B. L'uso di cross apply to additional information (Uso di cross apply to additional information)

Nell'esempio seguente viene elencato il buffer di input per le sessioni utente.

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

Vedi anche