SQL Server 歷史SQL執行記錄


  編程執行Sql語句難免忘記保存執行的文本,或是意外設備故障多種情況的發生。對於寫的簡單的Sql語句丟了就丟了,但對於自己寫的復雜的丟失就有些慌了,

  有時候很難再次寫出來,這時候就需要用一些方法找回Sql語句,下面的方法只適合MS SQLServer:

    SELECT TOP 1000 

    --創建時間
    QS.creation_time,
    --查詢語句
    SUBSTRING(ST.text,(QS.statement_start_offset/2)+1,
    ((CASE QS.statement_end_offset WHEN -1 THEN DATALENGTH(st.text)
    ELSE QS.statement_end_offset END - QS.statement_start_offset)/2) + 1
    ) AS statement_text,
    --執行文本
    ST.text,
    --執行計划
    QS.total_worker_time,
    QS.last_worker_time,
    QS.max_worker_time,
    QS.min_worker_time
    FROM
    sys.dm_exec_query_stats QS
    --關鍵字
    CROSS APPLY
    sys.dm_exec_sql_text(QS.sql_handle) ST
    ORDER BY
    QS.creation_time DESC
    參考:http://blog.csdn.net/gulingeagle/article/details/50725160

          http://blog.csdn.net/dingshuanglei/article/details/79460696


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM