Udostępnij za pomocą


sys.dm_exec_input_buffer (Transact-SQL)

Dotyczy do: SQL Server 2014 (12.x) SP2 i nowsze wersje Azure SQL DatabaseAzure SQL Managed InstanceSQL database in Microsoft Fabric

Zwraca informacje o wyciągach przesłanych do instancji SQL Server.

Składnia

sys.dm_exec_input_buffer ( session_id , request_id )

Arguments

session_id Czy identyfikator sesji wykonuje tę partię, którą trzeba sprawdzić? session_id jest mały. session_id można uzyskać z następujących dynamicznych obiektów zarządzania:

request_id request_id z sys.dm_exec_requests. request_id to inteligencja.

Zwracana tabela

Nazwa kolumny Typ danych Description
event_type nvarchar(256) Typ zdarzenia w buforze wejściowym dla danego identyfikatora sesji (SPID).
parameters smallint Jakiekolwiek parametry przewidziane dla stwierdzenia.
event_info nvarchar(max) Tekst instrukcji w buforze wejściowym dla danego identyfikatora sesji (SPID).

Permissions

Na SQL Server, jeśli użytkownik posiada uprawnienia VIEW SERVER STATE, zobaczy wszystkie wykonywane sesje na instancji SQL Server; w przeciwnym razie użytkownik zobaczy tylko bieżącą sesję.

Ważne

Uruchomienie tego DMV poza SQL Server Management Studio na SQL Server bez uprawnień VIEW SERVER STATE (takich jak wyzwalacz, procedura przechowywana czy funkcja) powoduje błąd uprawnień do głównej bazy danych.

W SQL Database, jeśli użytkownik jest właścicielem bazy, użytkownik zobaczy wszystkie wykonywane sesje w SQL Database; w przeciwnym razie użytkownik zobaczy tylko bieżącą sesję.

Ważne

Uruchomienie tego DMV poza SQL Server Management Studio na Azure SQL Database bez uprawnień właściciela (takich jak wyzwalacz, procedura przechowywana czy funkcja) powoduje błąd uprawnień do głównej bazy danych.

Uprawnienia dla programu SQL Server 2022 i nowszych

Wymaga uprawnienia WYŚWIETL STAN WYDAJNOŚCI SERWERA na serwerze.

Uwagi

Ta funkcja dynamicznego zarządzania może być używana razem z sys.dm_exec_sessions lub sys.dm_exec_requests poprzez wykonanie CROSS APPLY.

Przykłady

A. Prosty przykład

Poniższy przykład pokazuje przekazanie identyfikatora sesji (SPID) oraz identyfikatora żądania do funkcji.

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

B. Używanie krzyżowego zastosowania do dodatkowych informacji

Poniższy przykład przedstawia bufor wejściowy dla sesji użytkownika.

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

Zobacz też