我需要在表中查找并存储每次执行过程时的执行时间。
有没有办法从程序中做到这一点?假设使用查询来查找其执行时间并将其写入表中?
除了使用探查器和过滤数千条记录之外,还有其他更好的方法来记录过程的执行时间吗?
谢谢
您可以简单地使用两个参数,并在过程开始时初始化一个参数,在过程结束时初始化下一个参数。
create procedure myproc as
begin
declare @start_time datetime = getdate()
(rest of procedure code)
declare @end_time datetime = getdate()
end
在退出该过程之前,您可以将这些值插入到日志记录表中。
INSERT INTO Proc_Exec_Log (procedure_name, start_time, end_time)
VALUES ('myproc', @start_time, @end_time);