DBCC INPUTBUFFER Kullanımı

SQL Server üzerinde sistemin durumunu izlediğimizde o anda çalıştırılan SQL ifadelerini, scriptlerini görmek isteriz. Bu amaçla genellikle sp_who veya sp_who2 komutlarını kullanarak ilgili SPID’ye erişilir. O oturumdaki SQL cümleciğine erişmek için DBCC INPUTBUFFER komutu çalıştırılır. Bu komuta SPID değeri parametre olarak verilir.

DBCC INPUTBUFFER(60)

Bu komuta alternatif olarak dm_exec_requests DMV tercih edilebilir. Böylece her iki yöntemle de bir oturumdaki en son çalıştırılan SQL ifadesini görmüş oluruz.

SELECT 
    SQLStatement       =
        SUBSTRING
        (
            qt.text,
            er.statement_start_offset/2,
            (CASE WHEN er.statement_end_offset = -1
                THEN LEN(CONVERT(nvarchar(MAX), qt.text)) * 2
                ELSE er.statement_end_offset
                END - er.statement_start_offset)/2
        )
        
FROM sys.dm_exec_requests er
CROSS APPLY sys.dm_exec_sql_text(er.sql_handle) AS qt
WHERE er.session_id = 60

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir