是否可以找出上次访问存储过程的时间?
我尝试了以下内容:
SELECT *
FROM sys.dm_db_index_usage_stats
WHERE [database_id] = DB_ID()
AND [object_id] = OBJECT_ID('stored procedure name')
并返回一个空白的结果集。
答案 0 :(得分:3)
我相信如果sproc仍然在服务器上的过程缓存中,可以查询sys.dm_exec_query_stats,这是可能的。
之后,你很害怕记录和追踪。
答案 1 :(得分:2)
添加日志条目作为存储过程的第一行:
insert into dbo.ProcLog (procname, date) values ('MyProc',getdate())
答案 2 :(得分:1)
这是一个可以放在每个过程中的通用代码行,它将包含正确的过程名称,而不需要对其进行硬编码。
INSERT INTO YourLog
(RunDate,ProcedureName,...)
VALUES
(GETDATE(),OBJECT_NAME(@@PROCID),...)