SQLServer查询历史执行记录的方法实现
更新时间:2023年09月28日 15:04:46 作者:nj0128
有的时候,需要知道近段时间SQLSERVER执行了什么语句,本文主要介绍了SQLServer查询历史执行记录的方法实现,具有一定的参考价值,感兴趣的可以了解一下
1. 使用 SQL Server Management Studio (SSMS) 的查询执行记录功能:
- 打开 SSMS,连接到要查看执行记录的数据库服务器。
- 在“对象资源管理器”窗格中,右键单击要查看执行记录的数据库,然后选择“报表” > “标准报表” > “执行记录”。
- 在“执行记录”窗口中,选择要查看的时间范围和其他过滤条件,然后单击“运行”。
2. 使用系统视图:
在 SQL Server Management Studio (SSMS) 中打开“新查询”窗口。
运行以下 SQL 查询语句来查看最近的执行记录:
SELECT TOP 100 * FROM sys.dm_exec_query_stats AS qs CROSS APPLY sys.dm_exec_sql_text(qs.sql_handle) AS st ORDER BY last_execution_time DESC;
- 这将显示最近的 100 个执行记录,按最后执行时间的降序排列。您可以根据需要更改 TOP 数量和排序顺序。
- 也可以看部分关键执行字段:
SELECT TOP 100
qs.last_execution_time,
DB_NAME(st.dbid) AS database_name,
OBJECT_NAME(st.objectid, st.dbid) AS object_name,
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 executed_sql
FROM sys.dm_exec_query_stats AS qs
CROSS APPLY sys.dm_exec_sql_text(qs.sql_handle) AS st
ORDER BY qs.last_execution_time DESC;这个查询语句将返回最近执行的 100 个查询,并包括执行时间、所在的数据库名称、对象名称和实际执行的 SQL 语句。其中 SUBSTRING 函数用于从完整的 SQL 语句文本中提取实际执行的部分。
到此这篇关于SQLServer查询历史执行记录的方法实现的文章就介绍到这了,更多相关SQLServer查询历史执行记录内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
Transactional replication(事务复制)详解之如何跳过一个事务
事务复制由 SQL Server 快照代理、日志读取器代理和分发代理实现。 快照代理准备快照文件(其中包含了已发布表和数据库对象的架构和数据),然后将这些文件存储在快照文件夹中,并在分发服务器中的分发数据库中记录同步作业。2014-08-08
SQL Report Builder 报表里面的常见问题分析
这篇文章主要介绍了SQL Report Builder 报表里面的常见问题分析的相关资料,需要的朋友可以参考下2015-12-12


最新评论