Sdílet prostřednictvím


sys.dm_exec_input_buffer (Transact-SQL)

Platí na: SQL Server 2014 (12.x) SP2 a novější verze Azure SQL DatabaseAzure SQL Managed InstanceSQL database in Microsoft Fabric

Vrací informace o výkazech zaslaných do instance SQL Serveru.

Syntaxe

sys.dm_exec_input_buffer ( session_id , request_id )

Arguments

session_id Je session ID, které vykonává dávkový soubor, který se hledá? session_id je malý. session_id lze získat z následujících objektů dynamické správy:

request_id request_id z sys.dm_exec_requests. request_id je inteligence.

Vrácená tabulka

Název sloupce Datový typ Description
event_type nvarchar(256) Typ události ve vstupním bufferu pro dané ID relace (SPID).
parameters smallint Jakékoli parametry uvedené pro tvrzení.
event_info nvarchar(max) Text příkazu ve vstupním bufferu pro dané ID relace (SPID).

Povolení

Na SQL Serveru, pokud má uživatel oprávnění ZOBRAZIT STAV SERVERU, uvidí všechny vykonávané relace na instanci SQL Serveru; jinak uživatel uvidí pouze aktuální relaci.

Důležité

Spuštění tohoto DMV mimo SQL Server Management Studio proti SQL Serveru bez oprávnění VIEW SERVER STATE (NAPŘÍKLAD V TRIGGERU, ULOŽENÉ PROCEDURĚ NEBO FUNKCI) VYVOLÁ CHYBU OPRÁVNĚNÍ V HLAVNÍ DATABÁZI.

V SQL databázi, pokud je uživatel vlastníkem databáze, uvidí všechny vykonávané relace v SQL databázi; jinak uživatel uvidí pouze aktuální relaci.

Důležité

Spuštění tohoto DMV mimo SQL Server Management Studio proti Azure SQL Database bez oprávnění vlastníka (například v triggeru, uložené procedurě nebo funkci) vyvolá chybu oprávnění na hlavní databázi.

Oprávnění pro SQL Server 2022 a novější

Vyžaduje oprávnění ZOBRAZIT STAV VÝKONU SERVERU na serveru.

Poznámky

Tuto dynamickou správu lze použít ve spojení s sys.dm_exec_sessions nebo sys.dm_exec_requests pomocí CROSS APPLY.

Examples

A. Jednoduchý příklad

Následující příklad ukazuje předání ID relace (SPID) a ID požadavku funkci.

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

B. Použití křížového použití na další informace

Následující příklad uvádí vstupní buffer pro uživatelské relace.

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

Viz také