Подтвердить что ты не робот

Последние выполненные запросы для конкретной базы данных

Я знаю, как получить последние выполненные запросы, используя следующий SQL в SSMS -

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

Но я хочу найти их для конкретной базы данных. Я не хочу использовать SQL Profiler, если мне это не нужно. Плюс я не думаю, что SQL Profiler позволит мне просматривать запросы, которые уже выполнялись без включения профилирования. Мне нужно сделать это из SSMS.

4b9b3361

Ответ 1

Это работает для меня, чтобы найти запросы в любой базе данных в экземпляре. Я - системный администратор экземпляра (проверьте свои привилегии):

SELECT deqs.last_execution_time AS [Time], dest.text AS [Query], dest.*
FROM sys.dm_exec_query_stats AS deqs
CROSS APPLY sys.dm_exec_sql_text(deqs.sql_handle) AS dest
WHERE dest.dbid = DB_ID('msdb')
ORDER BY deqs.last_execution_time DESC

Это тот же ответ, что и Аарон Бертран, но он не был помещен в ответ.