在我的 MS SQL Profiler 中,我看到了很多这样的小查询。
执行 sp_execute 1,@p0=15954
从理论上讲,我知道这是有效的,它正在执行先前创建的查询并传入特定参数。但问题是我不确定是什么导致了这些查询。
有没有办法查看这些查询的 TSQL 内容?
在我的 MS SQL Profiler 中,我看到了很多这样的小查询。
执行 sp_execute 1,@p0=15954
从理论上讲,我知道这是有效的,它正在执行先前创建的查询并传入特定参数。但问题是我不确定是什么导致了这些查询。
有没有办法查看这些查询的 TSQL 内容?
在 Sql 探查器中,我使用 Event StoredProcedure>>SP:CacheHit。我在链接中读到了它。捕获 SQL:StmtCompleted 和 RPC:Completed DIDNT 捕获 sp_execute 的参数
这看起来像是在运行一个准备好的查询。要做的一件事是查看探查器跟踪以查看是否可以找到生成此特定句柄的 sp_prepare 查询。
另一种选择是查询系统视图以查找基础文本。
如果它当前正在运行,这将为您提供查询
select text
from sys.dm_exec_requests
cross apply sys.dm_exec_sql_text(plan_handle)
where session_id = <SPID FROM PROFILER>