Forum

Çalışan Sistem...
 
Bildirimler
Hepsini Temizle

Çalışan Sistemin SQL Sorgularını Görebilmek

6 Yazılar
4 Üyeler
0 Likes
3,332 Görüntüleme
(@hamzasaricicek)
Gönderiler: 112
Estimable Member
Konu başlatıcı
 

Merhabalar, 

SQL Server 2005 üzerinde çalışan bir ERP veya Muhasebe programını belirli bir modülünü çalıştırdığımız zaman o anki görüntülenen verileri oluşturan SQL Sorgusunu veritabanı içerisinden görüntüleyebilmem mümkünmüdür. SQL Server kendi içinden çekilen verilere ait bu şekilde bir QUERY Log  tutuyormu acaba. Şimdiden çok teşekkür ediyorum..

 
Gönderildi : 29/05/2013 17:37

(@MehmetEkici)
Gönderiler: 11
Eminent Member
 

SQL versiyonun Express değilse PROFILER ile izleme yapabilirsin. 

 
Gönderildi : 30/05/2013 19:34

(@MURATSOYLU)
Gönderiler: 4
New Member
 


USE databasename


GO


SET ANSI_NULLS ON


GO


SET QUOTED_IDENTIFIER ON


GO


 


CREATE PROCEDURE [dbo].[sp_who7]


(


@SessionID int = NULL


)


AS


BEGIN


SELECT


SPID = er.session_id


,Status = ses.status


,[Login] = ses.login_name


,Host = ses.host_name


,BlkBy = er.blocking_session_id


,DBName = DB_Name(er.database_id)


,CommandType = er.command


,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


)


,ObjectName = OBJECT_SCHEMA_NAME(qt.objectid,dbid) + '.' + OBJECT_NAME(qt.objectid, qt.dbid)


,ElapsedMS = er.total_elapsed_time


,CPUTime = er.cpu_time


,IOReads = er.logical_reads + er.reads


,IOWrites = er.writes


,LastWaitType = er.last_wait_type


,StartTime = er.start_time


,Protocol = con.net_transport


,transaction_isolation =


CASE ses.transaction_isolation_level


WHEN 0 THEN 'Unspecified'


WHEN 1 THEN 'Read Uncommitted'


WHEN 2 THEN 'Read Committed'


WHEN 3 THEN 'Repeatable'


WHEN 4 THEN 'Serializable'


WHEN 5 THEN 'Snapshot'


END


,ConnectionWrites = con.num_writes


,ConnectionReads = con.num_reads


,ClientAddress = con.client_net_address


,Authentication = con.auth_scheme


FROM sys.dm_exec_requests er


LEFT JOIN sys.dm_exec_sessions ses


ON ses.session_id = er.session_id


LEFT JOIN sys.dm_exec_connections con


ON con.session_id = ses.session_id


CROSS APPLY sys.dm_exec_sql_text(er.sql_handle) as qt


WHERE @SessionID IS NULL OR er.session_id = @SessionID


AND er.session_id > 50


ORDER BY


er.blocking_session_id DESC


,er.session_id


END


 


GO


sp_who7


go


--YUKARIDAKİ KODU ÇALISTIRABİLİRMİSİNİZ

 
Gönderildi : 31/05/2013 15:01

(@hamzasaricicek)
Gönderiler: 112
Estimable Member
Konu başlatıcı
 

Merhabalar, 

 

Kodu çalıştırdım, oluşan stored procedures'ü çalıştırdığım zaman sonuç olarak istediğim şekilde sonuç vermiyor malesef. Tam olarak istediğim, veritabanı herhangi bir dış kaynak tarafından çalıştırıldığı zaman QUERY olarak karşı tarafın gönderdiği sorgunun ne olduğunu görmek istiyorum..   

 
Gönderildi : 03/06/2013 19:11

(@MURATSOYLU)
Gönderiler: 4
New Member
 

Calistirdiginizda sql statement alanina baktinizmi 

 
Gönderildi : 03/06/2013 19:30

(@caglarozenc)
Gönderiler: 247
Reputable Member
 

SQL Server profiler ile istediğiniz şekilde queryleri görüntüleyebilirsiniz.

 
Gönderildi : 06/06/2013 13:15

Paylaş: