zoukankan      html  css  js  c++  java
  • sqlserver-查询存储过程最后执行情况

    最近系统进行重构,有大量的存储过程无法判断是否使用,刚好找到了一下sql,可以起到辅助作用,注意只是辅助作用,看下面解释

    sys.dm_exec_procedure_stats,返回缓存存储过程的聚合性能统计信息。 该视图为每个缓存的存储过程计划都返回一行,行的生存期与存储过程保持缓存状态的时间一样长。 在从缓存中删除存储过程时,也将从该视图中删除对应行。所以他只是代表缓存中的执行情况,并不能说明历史以来的情况,不过我觉得影响不到,如果没有缓存,岂不是代表最近从来没有使用过?

    # 第一步
    SELECT database_id, *
    FROM sys.databases
    WHERE database_id > 4;
    #第二步
    SELECT a.name                AS 存储过程名称,
           a.create_date         AS 创建日期,
           a.modify_date         AS 修改日期,
           b.cached_time         AS 缓存时间,
           b.last_execution_time AS 最后执行日期,
           b.execution_count     AS 执行次数
    FROM sys.procedures a
           LEFT JOIN sys.dm_exec_procedure_stats b ON a.object_id = b.object_id AND b.database_id = '替换第一步获取到的id'
    WHERE a.is_ms_shipped = 0
    ORDER BY b.execution_count desc
    

    参考文档

    人的潜力是可以激发的,比如说你给我50斤的砖我可能拎不动,但你要是给我100斤的人民币我肯定拎起来就跑。
  • 相关阅读:
    Asp.Net Core 2.0 之旅---在Ubuntu上部署WEB应用程序
    xml对象序列化
    txt文本文件记录日志
    HttpGet HttpPost
    c# MD5
    10位时间戳转为C#格式时间
    树莓派上运行.net core 2.0程序
    c# 解析json
    小程序与后台数据交互时出现乱码时
    小程序template怎样渲染页面的
  • 原文地址:https://www.cnblogs.com/mojiruo/p/11121205.html
Copyright © 2011-2022 走看看