Вопрос

Один из моих разработчиков, работающих над заводом на основе триггеров в SQL Server 2008, спросил меня, есть ли команда для извлечения совсем недавно выполненная команда SQL В пределах T-SQL. Я подумал, что существует система хранимой системы для такой функции, но, возможно, я думаю о другом продукте из предыдущего десятилетия ... онлайн -поиск не дал нам никаких результатов.

У кого -нибудь есть информация о чем -то в этом роде?

Это было полезно?

Решение

Конечно попробуйте это:

SELECT
DMExQryStats.last_execution_time AS [Executed At],
DMExSQLTxt.text AS [Query]
FROM
sys.dm_exec_query_stats AS DMExQryStats
CROSS APPLY
sys.dm_exec_sql_text(DMExQryStats.sql_handle) AS DMExSQLTxt
ORDER BY
DMExQryStats.last_execution_time DESC

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

Другие советы

Что ж, процедура, которая извлекает наиболее современную партию SQL, может безопасно вернуться :)

На серьезной ноте вы можете посмотреть sys.dm_exec_query_stats а также sys.dm_exec_procedure_stats Чтобы увидеть, когда план был выполнен в последний раз, на основе last_execution_time столбец. Но обратите внимание, что метод не является надежным Потому что это не учитывает планы, которые были выселены из кэша после исполнения.

Что означает «самый последний» в контексте многоядерной машины?

Кроме того, он имеет в виду последнее начавшее или последнее завершение?

Наконец, он должен просто открыть SSM и посмотреть на монитор активности.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top