Sql Server 2012 存储过程的调试

Posted 烟雨楼台^浮云往事

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Sql Server 2012 存储过程的调试相关的知识,希望对你有一定的参考价值。

【一】Sql Server 关于存储过程调试
SQL2000是在查询分析器中的对象浏览器中选中需要调试的存储过程,右键----调试---输入参数开始调试。

sqlserver2008中则完全不同,变成了必须要在SSMS中EXEC [PROCEDURE NAME] @VAR1,@VAR2,然后点绿色三角或者点菜单中的调试---启动调试。然后点工具栏的最右边的单步调试或者跳出等。下面的变量窗口和堆栈窗口等可以查看调试中变量等动态变化值。
sqlserver2008调试的要求和条件:如果在引擎所在的电脑或服务器上调试,则只需要SA或者WINDOWS用户登陆即可。如果是异地调试,则需要设置防火墙例外,增加SSMS和SQLSERVER.EXE为允许,增加135端口允许通过。
配置 Transact-SQL 调试器

  http://technet.microsoft.com/zh-cn/library/cc646024.aspx

  【二】VS 2010 的存储过程的调试。

关于存储过程的调试,现在总结一下发现单步调试存储过程有以下2种方法:

1.这种方法自己已经做过,是可以的,如下:

  a.如果目标数据库存在存储过程,右击该存储过程-修改,打开存储过程,并在需要的地方设置断点。(如果没有自定义存储过程,则需要在Sql Server 2012数据库中创建存储过程,完成后在里面设置断点);

  b.另外开启一个新建查询窗口,写入调用代码:例如   exec BillManageInputProc \'主单1\',\'0111111\',\'0111112\',\'121\',\'legend\',\'2014-09-24\',\'001\',\'2014-09-24\',\'1\',\'市场部\',\'0\' ,单击 调试按钮 启动存储过程的调试;

  c.单击 F 11 进行逐句调试。

2.在vs2010调试存储过程步骤如下:

首先,打开vs,点击 视图-->服务器资源管理器

选择数据连接,单击右键,点击添加连接

选择存储过程所在的服务器和数据库

选择要调试的存储过程,单击右键,选择单步调试

vs会要求输入参数值

然后进入单步调试,进入单步调试后就像调试C#或vb.net代码一样,可以监控变量值,而且如果执行的过程中涉及到触发器,还会跳入到触发器里,执行触发器代码

监控变量:

至此,就可以像调试应用程序一样调试存储过程了。

以上是关于Sql Server 2012 存储过程的调试的主要内容,如果未能解决你的问题,请参考以下文章

如何在SQL Server 2008下轻松调试T-SQL语句和存储过程

存储过程系列之调试存储过程 SQL Server 2005

存储过程系列之调试存储过程 SQL Server 2005

如何在 Microsoft SQL Server 2017 上调试存储过程?

在 SQL Server 2016 中调试一个关于存储过程执行的奇怪场景

sqlserver存储过程怎么调试