DBCC INPUTBUFFER (języka Transact-SQL)
Displays the last statement sent from a client to an instance of Microsoft SQL Server.
DBCC INPUTBUFFER ( session_id [ , request_id ])
[WITH NO_INFOMSGS ]
Argumenty
session_id
Jest to identyfikator sesji związany z każdym aktywnym połączeniem podstawowym.request_id
Jest to dokładne żądanie (partia), aby wyszukiwać w bieżącej sesji.Następująca kwerenda zwraca request_id:
SELECT request_id FROM sys.dm_exec_requests WHERE session_id = @@spid
Z
jeden-do-jednegoNO_INFOMSGS
Pomija wszystkie komunikaty informacyjne, których poziomy ważności, od 0 do 10.
Zestawy wyników
Opcja DBCC INPUTBUFFER zwraca zestaw wierszy dla następujących kolumn.
Nazwa kolumna |
Typ danych |
Description |
---|---|---|
Typ zdarzenia |
nvarchar(30) |
Typ zdarzenia.Może to być RPC Event lub Language Event.Jeśli nie wykryto ostatniego zdarzenia wartością wyjściową będzie No Event. |
Parameters |
int |
0 = Tekst 1- n = Parametry |
EventInfo |
nvarchar(4000) |
Dla Typ zdarzenia of RPC, EventInfo zawiera tylko nazwę procedury.Dla Typ zdarzenie języka, tylko pierwsze 4000 znaków zdarzenie są wyświetlane. |
Określa hasło wymagane do odszyfrowania klucz prywatnego, który jest pobierany z pliku.
EventType Parameters EventInfo
-------------- ---------- ---------------------
Language Event 0 DBCC INPUTBUFFER (11)
(1 row(s) affected)
DBCC execution completed. If DBCC printed error messages, contact your system administrator.
Uprawnienia
To klauzula jest opcjonalna, jeśli klucz prywatny jest chroniony pustym hasłem.
Użytkownik musi być członkiem sysadmin ustalić roli serwera.
Jeśli wymagane jest hasło, ale hasło nie zostanie określony, instrukcja nie powiedzie się.
Parametr session_id musi być taki sam, jak identyfikator sesji, dla której uruchomiono polecenie.Aby określić identyfikator sesji, wykonaj następującą kwerendę:
SELECT @@spid
Przykłady
Poniższy przykład działa DBCC INPUTBUFFER dla drugiego połączenia podczas długich transakcji jest uruchomiona na poprzedniego połączenia.
CREATE TABLE T1 (Col1 int, Col2 char(3));
GO
DECLARE @i int;
SELECT @i = 0
BEGIN TRAN
SELECT @i = 0
WHILE (@i < 100000)
BEGIN
INSERT INTO T1 VALUES (@i, CAST(@i AS char(3)))
SELECT @i = @i + 1
END;
COMMIT TRAN;
--Start new connection #2.
DBCC INPUTBUFFER (52);