【问题标题】:How to view script of executed dynamic TSQL query如何查看执行动态 SQL 查询的脚本
【发布时间】:2021-07-17 21:54:03
【问题描述】:

我不久前使用动态 SQL 和游标创建了一个存储过程。出于维护和调整的目的,我开始认为标准 SQL 比必须调整光标更好。但是,要评估这个选项,我真的不想重写所有这些逻辑。

有没有办法查看我的光标创建的查询?我意识到有 SQL Profiler(我很少使用它),但是,在快速搜索之后,我发现它只会显示“exec my_stored_procedure”而不是显示整个脚本。

有什么想法吗?

My SQL Server 版本:Microsoft SQL Server 2017 (RTM-CU22) (KB4577467) - 14.0.3356.20 (X64) Aug 20 2020 22:33:27 版权所有 (C) 2017 Microsoft Corporation Developer Edition (64-bit) o​​n Windows Server 2019 Standard 10.0(内部版本 17763:)(管理程序)

谢谢

【问题讨论】:

  • 如果它是一次性的,您可以将打印添加到 SP 以获取动态 SQL 所做的输出。

标签: tsql stored-procedures ssms


【解决方案1】:

如果您的动态 SQL 在执行之前已构建在变量中,您可以使用 PRINT 语句来查看查询是什么,例如 PRINT @SQL。然后它将显示在 SSMS 的消息窗口中。

【讨论】:

  • 太棒了,谢谢!一开始忘了说动态TSQL里面有游标,我还以为会有问题。然而,没有。刚刚测试了你的建议,它有效!
  • 只要 StackOverflow 允许我,我就会批准你的回答...告诉我等待 4 分钟
  • 非常感谢。很高兴它对你有用。
猜你喜欢
  • 2015-05-22
  • 2017-01-07
  • 2018-01-20
  • 1970-01-01
  • 1970-01-01
  • 2020-06-24
  • 2015-02-07
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多