SQL Server2000存储过程调试

今天写了个存储过程,在查询分析器中测试报错:



这样的错误信息根本看不出错在哪边,只能用单步执行来追踪了。在查询分析器对象浏览器中找到要调试的存储过程,右键点击选择调试:



输入各个参数的值后开始调试(钩选自动回滚调试完毕后将回滚操作):



按F11单步执行:



终于找到错误的位置了:





修改存储过程,输出@strSQL的值,才发现原来是声明的时候设置@strSQL的长度为300,而拼接的SQL语句太长了,长出的部分被截断才导致出错,OK,将@strSQL长度增加,问题解决!

说明:如果在存储过程中有SET NOCOUNT ON语句,在调试过程中应注释掉,在本次调试过程中发现有SET NOCOUNT ON调试器遇错会继续执行,也不报错!

在SQL Server联机丛书中说明:建议不要在生成服务器上使用 Transact-SQL 调试程序。在步骤执行模式下,调试程序会锁定其它进程所需的某些系统资源。

posted @ 2010-10-12 10:53  VIPK  阅读(3049)  评论(0编辑  收藏  举报