我的SQL Server 2012数据库中有数百个存储过程。
从我的c#代码中,我正在调用其中一个存储过程,而这些存储过程又会调用另一个存储过程,依此类推。
存储过程执行失败。我需要调试它。为此,我需要知道在另一个存储过程中调用存储过程时作为参数发送的值是什么。
我无法更改存储过程,有Watch
和StackTrace
存储过程吗?
是的,我使用的是Visual Studio 2010
答案 0 :(得分:2)
对于调试存储过程,您必须在具有数据库引擎的PC上,然后简单地在其上放置一个断点,如果有参数则传递参数值,然后单击debug。
答案 1 :(得分:1)
假设您无法使用Visual Studio并在调用SP的位置设置断点来检查参数,则最佳选择是使用SQL Profiler。使用Profiler,您可以检查正在运行的查询并查看其持续时间。
如果您无法使用分析器(也许您正在使用快速版),那么您唯一的选择是创建一个记录表并暂时更改您的SP以将参数插入其中 - 这个选项远非理想的它需要更改代码来分析它。