2016-01-18 8 views
2

Мне нужно зарегистрировать пользовательские функции SQL Server (функции/функции) и вызовы хранимых процедур (имя функции/SP и время последнего выполнения).Получить последнее время и имя для функций пользователей SQL Server

Для хранимых процедур я использую расширенные события (сеанс -> EVENT sqlserver.sp_statement_completed).

Можно ли использовать такой же подход для функций?

+0

@MitchWheat Я добавил метод, который я использую сейчас – Andrey

ответ

1

Я использую этот метод в настоящее время:

INSERT INTO @Table 
    SELECT DISTINCT ct.objectid as ObjectId, 
    GETDATE() LastDate 

FROM sys.dm_exec_cached_plans cp 
OUTER APPLY sys.dm_exec_sql_text(plan_handle) AS ct 
INNER JOIN Sysobjects s on s.id = ct.objectid 
WHERE s.xtype in ('V', 'IF', 'FN', 'TF') --Views, Table-valued Functions, Scalar-valued functions 

Итак, я называю этот код с помощью таймера (например, каждый час). Он не показывает точное время вызова, но позволяет мне найти неиспользуемые функции и т. Д.

Смежные вопросы