DBCC INPUTBUFFER (Transact-SQL)

Actualizado: 5 de diciembre de 2005

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

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


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

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.

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

int

0 = Texto

1- n = Parámetros

EventInfo

nvarchar(4000)

En un argumento EventType de RPC, EventInfo sólo contiene el nombre del procedimiento. Si el valor de EventType es Language, sólo 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.

Requiere una de las siguientes condiciones:

  • El usuario debe ser miembro de la función fija 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
    

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

Versión Historial

5 de diciembre de 2005

Contenido modificado:
  • Se han reescrito las descripciones de los conjuntos de resultados para aclararlas.
  • Se ha agregado más información a la sección Permisos.

Adiciones de comunidad

AGREGAR
Mostrar: