SQLServer:如何查看sql 的最后执行时间

SQLServer:如何查看sql 的最后执行时间,第1张

概述    SQLServer  :如何查看sql的最后执行时间 ?    这个问题当时我使我郁闷了下 ,不知道怎么查看sql 的最后执行时间 ,后来在 在一个技术交流群里的到了高大侠的指点 ,才恍然大悟。   在SQLServer中有一个sys.dm_exec_query_stats 这个DMV(动态视图),该视图中记录了缓存中所有查询计划的统计信息,每一个查询计划在该视图中对应一条相关信息。 该视

 

 

sqlServer  :如何查看sql的最后执行时间 ?

 

 这个问题当时我使我郁闷了下 ,不知道怎么查看sql 的最后执行时间 ,后来在 在一个技术交流群里的到了高大侠的指点 ,才恍然大悟。

 

在sqlServer中有一个sys.dm_exec_query_stats 这个DMV(动态视图),该视图中记录了缓存中所有查询计划的统计信息,每一个查询计划在该视图中对应一条相关信息。

该视图字段的的具体相关信息可以参考sqlServer的帮助文档。

 

以下就是查询SQL语句最后执行时间了。

select Q.[text],Q.last_execution_time from(select B.[text],last_execution_time,ROW_NUMBER() over(partition by cast(B.[text] as varchar)order by last_execution_time desc) num from sys.dm_exec_query_stats Across apply fn_get_sql(plan_handle) B) Qwhere num=1

 

当然这个可以根据需要 ,查找特定的sql之后执行时间的, 加一个模糊查询就ok了。

 

其实这种方法也有很大的缺陷!

 

前面说过 ,sys.dm_exec_query_stats 这个Dmv是 记录了查询计划相关统计信息,当查询计划由于内存或是机器重启,或是执行了 dbcc dropcleanbuffers ,dbcc freeproccache 

*** 作后,内存中执行计划就会被删除,查询计划就会在

sys.dm_exec_query_stats 对应的记录就会被删除,这时使用这个Dmv就不能查到相关的记录了。

 

所以刚才的方法并不能查到所有的执行过的sql的最后执行时间!

 

over!!!!!!!!!!!!!!!!!!!!!!!!!

总结

以上是内存溢出为你收集整理的SQLServer:如何查看sql 的最后执行时间全部内容,希望文章能够帮你解决SQLServer:如何查看sql 的最后执行时间所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/1171973.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-02
下一篇 2022-06-02

发表评论

登录后才能评论

评论列表(0条)

保存