Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Berlaku untuk:SQL Server
Azure SQL Database
Azure SQL Managed Instance
Database SQL di Microsoft Fabric
Menampilkan pernyataan terakhir yang dikirim dari klien ke instans SQL Server.
Sintaks
DBCC INPUTBUFFER ( session_id [ , request_id ] )
[ WITH NO_INFOMSGS ]
Argumen
session_id
ID sesi yang terkait dengan setiap koneksi utama aktif.
request_id
Permintaan yang tepat (batch) untuk dicari dalam sesi saat ini.
Kueri berikut mengembalikan request_id:
SELECT request_id
FROM sys.dm_exec_requests
WHERE session_id = @@spid;
WITH
Mengaktifkan opsi yang akan ditentukan.
NO_INFOMSGS
Menekan semua pesan informasi yang memiliki tingkat keparahan dari 0 hingga 10.
Tataan hasil
DBCC INPUTBUFFER mengembalikan set baris dengan kolom berikut.
| Nama kolom | Jenis data | Deskripsi |
|---|---|---|
| EventType | nvarchar(30) | Jenis peristiwa. Ini bisa menjadi Peristiwa RPC atau Peristiwa Bahasa. Output akan menjadi Tidak Ada Peristiwa ketika tidak ada peristiwa terakhir yang terdeteksi. |
| Parameter | smallint | 0 = Teks 1- n = Parameter |
| EventInfo | nvarchar(4000) | Untuk EventType RPC, EventInfo hanya berisi nama prosedur. Untuk EventType bahasa, hanya 4000 karakter pertama peristiwa yang ditampilkan. |
Misalnya, DBCC INPUTBUFFER mengembalikan hasil berikut yang ditetapkan saat peristiwa terakhir dalam buffer adalah 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.
Catatan
Dimulai dengan SQL Server 2014 (12.x) SP2, gunakan sys.dm_exec_input_buffer untuk mengembalikan informasi tentang pernyataan yang dikirimkan ke instans SQL Server.
Izin
SQL Server memerlukan izin VIEW SERVER STATE , atau keanggotaan dalam peran server tetap sysadmin .
Tanpa salah satu dari ini, pengguna hanya dapat melihat buffer input sesi mereka sendiri. Itu berarti session_id harus sama dengan ID sesi tempat perintah dijalankan. Untuk menentukan ID sesi. jalankan kueri berikut:
SELECT @@spid;
Tingkat SQL Database Premium dan Business Critical memerlukan izin TAMPILKAN STATUS DATABASE dalam database. Tingkat Standar SQL Database, Dasar, dan Tujuan Umum memerlukan akun admin SQL Database.
Contoh
Contoh berikut berjalan DBCC INPUTBUFFER pada koneksi kedua saat transaksi panjang berjalan pada koneksi sebelumnya.
CREATE TABLE dbo.T1 (Col1 INT, Col2 CHAR(3));
GO
DECLARE @i INT = 0;
BEGIN TRANSACTION
SET @i = 0;
WHILE (@i < 100000)
BEGIN
INSERT INTO dbo.T1
VALUES (@i, CAST(@i AS CHAR(3)));
SET @i += 1;
END;
COMMIT TRANSACTION;
--Start new connection #2.
DBCC INPUTBUFFER (52);