MSSQL – Jak sprawdzić jakie zapytania zostały wywołane.

W pracy korzystamy z serwera magazynowego WF-MAG. Sklep mamy w PHP + mysql więc jest problem w synchronizacji danych między wf-magiem a stroną. WF-Mag oczywiście nie udostępnia informacji o wywoływanych procedurach czy zapytaniach na bazie, struktura bazy też nie jest zbyt przejrzysta (hahaha), więc zawsze jest trochę problematyczne pisanie zapytań do bazy. Na szczęście okazuje się, że jest zapytanie uniwersalne dla serwera MSSQL 2008 (nie wiem czy dla innych wersji też, nie sprawdzałem). Zapytanie wyrzuca po prostu wszystkie zapytania które były wywoływane ostatnio na bazie (także te ukryte przez WF-Maga).

SELECT deqs.last_execution_time AS [Time], dest.TEXT AS [Query]
FROM sys.dm_exec_query_stats AS deqs
CROSS APPLY sys.dm_exec_sql_text(deqs.sql_handle) AS dest
ORDER BY deqs.last_execution_time DESC