调试SQL Server的存储过程及用户定义函数

原创 2005年06月03日 13:57:00

1、在查询分析器中调试

查询分析器中调试的步骤如下:
    SQL 2000查询分析器
        --左连的对象浏览器(没有的话按F8)
        --对象项中
        --右键调试的存储过程
        --调试
        --输入参数(必须输入所有的参数,包括默认值/输出参数
        --点击执行
        --出现一个浮动工具条
        --上面有单步执行,断点设置等

按F11是单步执行.

如果要运行到指定行,只需要将光标移动到指定的行,再按Ctrl+F10

2、通过输出存储过程或用户定义函数的处理结果进行调试

    如果没办法使用查询分析器调试存储过程,可以直接在存储过程中添加 PRINT 或者 SELECT 语句,输出存储过程各步骤的执行结果。对于用户定义函数,不能使用 PRINT 或者 SELECT 语句输出各步骤的执行结果,要调度用户定义函数,可以将用户定义函数改成存储过程,调试成功后再改回用户定义函数。

3、在VB.NET中调试

菜单中,选择"工具"--"连接到数据库"
       选择"视图"--"服务器资源管理器"
在服务器资源管理器中,右键要调试的存储过程或者用户定义函数--单步执行.

4、保障查询分析器或者VB.NET中能成功调试的几个事项

1.   远程sql服务器的mssqlserver服务要求使用指定用户(不是本地系统用户),最好是administrator启动。
     控制面板--管理工具--服务--右键mssqlserver--属性--登录中,将登录身份改为“此帐户”,并设置对应的用户名及密码。
2.   登录远程sql的用户使用sa
3.   远程sql服务器要求未禁用调试功能,执行下面的语句开启调试功能:
     sp_sdidebug legacy_on
4.   保证调试与被调试的电脑的sql server版本一致,无论是客户端,还是服务器,最好都安装sql sp4。
     检查SQ ServerL有没有打补丁的方法是在查询分析器中运行:
     select @@version
     如果出来的版本号是8.00.2039以下,则表明未安装sp4的补丁。
     全部补丁的位置(在下载页的中间部分,可以选择语言,必须保证下载的补丁语言和sql server实例语言对应)
     简体中文版式SQL Server 2000应该安装的补丁
注意:
     a.  补丁下载后,执行的时候是解压,要在解压后的目录中执行setup.bat才是真正的安装
     b.  如果的操作系统是xp,那么在安装xp sp2后,不管以前是否安装过sql sp4,都要再安装一次,并且在防火墙中开启1433端口,否则无法被其他电脑访问。
     c.  windows 2003上运行机制的 SQL Server 必须安装sp3或者更高的补丁版本。

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

今天突然有同事问起,如何在sqlserver中调试存储过程(我们公司使用的是sqlserver 2008 R2),猛地一看,和以前使用sqlserver 2000真的有很大的不同,我真晕了。 于...
  • dinglang_2009
  • dinglang_2009
  • 2011年10月19日 10:57
  • 69542

SQL中的自定义函数总结

自定义函数:根据返回值的类型可以分为标量函数(返回单个值)和表值函数(返回一个表)  Page  174; SQL中的自定义函数总共有三种 (1)标量函数——标量值函数 语法结构: CREATE ...
  • adreammaker
  • adreammaker
  • 2017年03月29日 20:43
  • 561

PL/SQL Developer 调试函数

第一次安装并使用PL/SQL Developer 调试函数 first: Functions. Two:右键-Add debug information Three: 右键-Test four...
  • TongYu2009
  • TongYu2009
  • 2012年11月28日 17:22
  • 4080

Sql Server 2012 存储过程的单步调试

最近在做vb项目的时候,用到了存储过程的调试,现在总结一下发现单步调试存储过程有以下2种方法: 1.这种方法自己已经做过,是可以的,如下:   a.如果目标数据库存在存储过程,右击该存储过...
  • hejisan
  • hejisan
  • 2016年08月18日 12:42
  • 3333

SQL Server用户自定义函数

前几篇博文介绍了不少SQL Server系统自带函数方面的使用方法,这次将学习SQL Sever用户自定义函数的使用方法,算是对SQL Server函数的补充。希望与园里的朋友共同学习并取经。 ...
  • duanbeibei
  • duanbeibei
  • 2016年05月04日 10:24
  • 927

SQL Server远程调试失败

前言     刚刚打开SQL Server 2008,想要新建一个数据库。发现出现了一个问题,这个问题由于之前没有遇到过,所以这次拿出来记录一些解决方式。 内容       出现上面这个错误的原因...
  • zlt995768025
  • zlt995768025
  • 2016年05月11日 10:45
  • 5676

Sql Server性能调试方法

今天调试了一个视图,涉及到性能的问题,索性把用到的方法总结一下: 1. 数据库执行计划: 按下工具栏中包含执行计划的按钮,然后执行视图或者查询语句,查询的分析结果就会显示到Executain ...
  • jcx5083761
  • jcx5083761
  • 2016年01月21日 17:13
  • 1004

SQL Server—防火墙阻止调试

用了一段数据库,不论是mysql还是sqlserver都没想到调试的问题,可能是以前写的查询或者存储过程太短的原因,所以忽略了一个事情。 现在当我用sql server 2008想进行调试的时候出现...
  • u013468915
  • u013468915
  • 2016年07月01日 10:30
  • 4815

sqlserver 自定义、删除、执行 函数和存储过程

自定义函数:```if (object_id('p_wm_get_dynstore', 'P') is not null) drop proc p_wm_get_dynstoregocreate ...
  • meylovezn
  • meylovezn
  • 2016年03月03日 11:50
  • 3413

Microsoft SQL Server 自定义函数整理大全

SQL SERVER中是允许有自定义函数,Microsoft SQL Server 并不将用户限制在定义为 Transact-SQL 语言一部分的内置函数上,而是允许用户创建自己的用户定义函数。 函数...
  • ycl295644
  • ycl295644
  • 2016年02月29日 11:02
  • 2237
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:调试SQL Server的存储过程及用户定义函数
举报原因:
原因补充:

(最多只允许输入30个字)