MySQL查询日志等效于Microsoft SQL Server

时间:2013-03-25 13:59:31

标签: sql sql-server hibernate jpa

MySQL可以选择记录对数据库执行的查询。 通过使用SQL Server Profiler,Microsoft SQL Server具有相同的选项。但是,我使用JPA(Hibernate)作为ORM工具,我可以看到查询转换为存储过程。

我可以看到很多以下几行:

exec sp_execute 6, 8
exec sp_execute 7, 8
exec sp_execute 4, 8

...这使得调试SQL语句变得困难(因为我必须查找相应的存储过程)

任何想法是如何快速查看真正的SQL查询?

谢谢! 约亨

1 个答案:

答案 0 :(得分:0)

您可以使用DMV查看最近运行的查询,这将为您提供在最后一天执行的查询,我认为这也可以为您提供有关查询文本的更多详细信息:

SELECT        SQLTEXT.text, STATS.last_execution_time
FROM          sys.dm_exec_query_stats STATS
CROSS APPLY   sys.dm_exec_sql_text(STATS.sql_handle) AS SQLTEXT
WHERE         STATS.last_execution_time > GETDATE()-1
ORDER BY      STATS.last_execution_time DESC

您可以明显更改where子句以获取您感兴趣的日期范围。