Condividi tramite


DBCC INPUTBUFFER (Transact-SQL)

Data aggiornamento: 5 dicembre 2005

Visualizza l'ultima istruzione inviata da un client a un'istanza di Microsoft SQL Server 2005.

Icona di collegamento a un argomentoConvenzioni della sintassi Transact-SQL

Sintassi

DBCC INPUTBUFFER ( session_id [ , request_id ] )
[WITH NO_INFOMSGS ]

Argomenti

  • session_id
    ID della sessione associata a ogni connessione principale attiva.
  • request_id
    Richiesta (batch) da cercare nella sessione corrente.

    La query seguente restituisce request_id:

    SELECT request_id 
    FROM sys.dm_exec_requests 
    WHERE session_id = @@spid
    
  • WITH
    Consente di specificare opzioni.
  • NO_INFOMSGS
    Evita la visualizzazione di tutti i messaggi informativi con livello di gravità compreso tra 0 e 10.

Set di risultati

L'istruzione DBCC INPUTBUFFER restituisce un set di righe che include le colonne seguenti.

Nome colonna Tipo di dati Descrizione

EventType

nvarchar(30)

Tipo di evento. Può corrispondere a RPC Event o Language Event. Se non viene rilevato un ultimo evento, l'output sarà No Event.

Parametri

int

0 = Testo

1- n = Parametri

EventInfo

nvarchar(4000)

Se il valore della colonna EventType è RPC, EventInfo visualizza solo il nome della procedura. Se EventType corrisponde a Language Event, vengono visualizzati solo i primi 4000 caratteri dell'evento.

Se, ad esempio, l'ultimo evento del buffer è DBCC INPUTBUFFER(11), DBCC INPUTBUFFER restituisce il set di risultati seguente.

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.

Autorizzazioni

È richiesta una delle condizioni seguenti:

  • L'utente deve essere membro del ruolo predefinito del server sysadmin.

  • L'utente deve disporre di autorizzazione VIEW SERVER STATE.

  • session_id deve corrispondere all'ID di sessione con cui il comando è in esecuzione. Per determinare l'ID di sessione, eseguire la query seguente:

    SELECT @@spid
    

Esempi

Nell'esempio seguente viene eseguito DBCC INPUTBUFFER in una seconda connessione durante una transazione di lunga durata su una connessione precedente.

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); 

Vedere anche

Riferimento

DBCC (Transact-SQL)
sp_who (Transact-SQL)
Flag di traccia (Transact-SQL)

Guida in linea e informazioni

Assistenza su SQL Server 2005

Cronologia modifiche

Versione Cronologia

5 dicembre 2005

Contenuto modificato
  • Riformulazione delle descrizioni dei set di risultati per maggiore chiarezza.
  • Aggiunta di ulteriori informazioni nella sezione Autorizzazioni.