Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/26.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql server 调试T-SQL脚本时的实时查询执行计划_Sql Server_Debugging_Sql Execution Plan - Fatal编程技术网

Sql server 调试T-SQL脚本时的实时查询执行计划

Sql server 调试T-SQL脚本时的实时查询执行计划,sql-server,debugging,sql-execution-plan,Sql Server,Debugging,Sql Execution Plan,我有SQLServer2008和SSMS2008,我正在调试一个脚本。我可以一步一步地完成脚本,但如果我单击“包含实际执行计划”(在执行计划中添加一个额外的结果选项卡)的工具栏按钮,我将无法再进行调试 相反,当我单击“调试”时,调试开始并立即停止,结果窗格显示我的线程已成功退出 我应该将此作为bug提交,还是调试和执行计划查看不能同时进行(尽管我不知道为什么它们不会进行)?您可以使用SQL Server Profiler返回实际的执行计划。使用探查器,您将能够在不干扰调试的情况下查看执行计划。例

我有SQLServer2008和SSMS2008,我正在调试一个脚本。我可以一步一步地完成脚本,但如果我单击“包含实际执行计划”(在执行计划中添加一个额外的结果选项卡)的工具栏按钮,我将无法再进行调试

相反,当我单击“调试”时,调试开始并立即停止,结果窗格显示我的线程已成功退出


我应该将此作为bug提交,还是调试和执行计划查看不能同时进行(尽管我不知道为什么它们不会进行)?

您可以使用SQL Server Profiler返回实际的执行计划。使用探查器,您将能够在不干扰调试的情况下查看执行计划。例如:

  • 开始一个新的跟踪
  • 选择调整模板
  • 转到事件选择选项卡
  • 选择“显示所有事件”
  • 展开性能,然后选择Showplan XML Statistics Profile
您可以向跟踪中添加任何其他事件和列,并且可以适当地过滤跟踪-例如,您可以开始调试,然后将跟踪过滤到您正在调试的SPID


当您逐步完成(甚至只是运行)脚本时,所有的执行计划都将显示在Profiler中。

这是一个合适的解决方法,但我一直考虑将其作为错误提交给connect团队,以查看他们的响应。