Compartir a través de


DBCC INPUTBUFFER (Transact-SQL)

Muestra la última instrucción enviada desde un cliente a una instancia de Microsoft SQL Server.

Se aplica a: SQL Server (SQL Server 2008 a través de la versión actual).

Icono de vínculo a temas Convenciones de sintaxis de Transact-SQL

Sintaxis

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

Argumentos

  • session_id
    Es el Id. de sesión asociado a cada conexión principal activa.

  • request_id
    Es la solicitud (lote) exacta que se va a buscar en la sesión actual.

    La siguiente consulta devuelve request_id:

    SELECT request_id 
    FROM sys.dm_exec_requests 
    WHERE session_id = @@spid;
    
  • WITH
    Habilita la especificación de opciones.

  • NO_INFOMSGS
    Elimina todos los mensajes informativos con niveles de gravedad entre 0 y 10.

Conjuntos de resultados

DBCC INPUTBUFFER devuelve un conjunto de filas con las siguientes columnas.

Nombre de columna

Tipo de datos

Descripción

EventType

nvarchar(30)

Tipo de evento. Puede ser RPC Event o Language Event. La salida será No Event si no se detectó el último evento.

Parameters

smallint

0 = Texto

1- n = Parámetros

EventInfo

nvarchar(4000)

En un argumento EventType de RPC, EventInfo solo contiene el nombre del procedimiento. Si el valor de EventType es Language, solo se muestran los primeros 4.000 caracteres del evento.

Por ejemplo, DBCC INPUTBUFFER devuelve el siguiente conjunto de resultados cuando el último evento del búfer es DBCC INPUTBUFFER(11).

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.

Permisos

Requiere una de las siguientes condiciones:

  • El usuario debe ser miembro del rol fijo de servidor sysadmin.

  • El usuario debe tener el permiso VIEW SERVER STATE.

  • session_id debe ser igual al Id. de sesión en el que se está ejecutando el comando. Para determinar el Id. de sesión ejecute la siguiente consulta:

    SELECT @@spid;
    

Ejemplos

En el ejemplo siguiente se ejecuta DBCC INPUTBUFFER en una segunda conexión mientras una transacción larga se ejecuta en una conexión anterior.

CREATE TABLE dbo.T1 (Col1 int, Col2 char(3));
GO
DECLARE @i int = 0;
BEGIN TRAN
SET @i = 0;
WHILE (@i < 100000)
BEGIN
INSERT INTO dbo.T1 VALUES (@i, CAST(@i AS char(3)));
SET @i += 1;
END;
COMMIT TRAN;
--Start new connection #2.
DBCC INPUTBUFFER (52);

Vea también

Referencia

DBCC (Transact-SQL)

sp_who (Transact-SQL)