如何使用VS.NET调试数据库存储过程

转载 2004年08月03日 19:34:00
VS.NET可以利用诸如C#以及VB.NET等语言,开发基于.NET架构的应用程序,同时也可以用来编写CSS(层叠样式表)、HTML、XML以及SQL。其中针对SQL的功能是经常被我们忽视的内容,下面我就详细讲解一下VS.NET是如何与SQL协同工作的。
    
     数据库连接
     VS.NET的Server Explorer可以非常方便的实现与数据库服务器的连接工作。虽然这种连接不仅限于SQL Server。图A显示的是VS.NET工作区右面的Server Explorer面板。你可以通过View下拉菜单找到该对象,或者在工作区右边点击选项卡来显示Server Explorer。在Server Explorer中右键点击Data Connections,会出现连接到新数据库的选项。图B是连接对话框。其中Test Connection按钮可以方便的测试数据库的可连接性和连接正确性。
    
     040423202.jpg
    
     图A:Visual Studio .NET的Server Explorer
    
     040423203.gif
    
     图B:通过Server Explorer添加一个新的数据库连接
     一旦在Server Explorer中添加了连接,它就会出现在Server Explorer的服务器节点中。同时服务器名称和相关选项也会出现在下方。SQL Servers节点可以提供程序访问SQL Server以及其中的数据元素的能力。现在,你差不多已经可以开始调试SQL代码了,不过在这之前还要进行一些设置。
    
     SQL Server设置
     SQL Server包含了一种扩展的存储过程,可以用它来控制调试存储过程的访问能力。这个存储过程叫做sp_sdidebug,下面的T-SQL代码可以用来允许一个用户对存储过程进行调试:
    
     USE Master
     GRANT EXECUTE
     ON sp_sdidebug
     TO username
    
     另外,用户必须具备访问数据库和存储过程的权限。一旦做好相关的设置,用户就可以开始真正的调试过程了。实际上,调试过程很简单,只需要在VS.NET的Server Explorer中右键点击存储过程,并选择Step Into Stored Procedure。图C 是一个使用Northwind数据库进行存储过程调试的例子。在这个例子中,存储过程会从数据库中返回十个价格最高的产品。
    
     040423204.gif
    
     图C:通过Server Explorer调试存储过程
     当调试过程开始后,就跟日常调试C#或VB.NET代码没什么不同了。图D是刚才的存储过程在调试模式下的视图。相应的选项可以通过Debug下拉菜单或者快捷键来实现。以下是几个与调试相关的快捷键:
    
    
     F5:继续
     Shift + F5:停止调试
     F11:单步进入
     F10: 单步跳过
     Shift + F11: 单步跳出
    
     040423205.jpg
    
     图D:调试模式下的存储过程
     另外,可以加入断点和查看点,以监视调试过程。在VS.NET工作区的下方,可以看到调试过程的输出结果。图E 显示了对存储过程进行调试后的VS.NET工作区。从图上我们能看到调试信息:存储过程运行的返回值是0,这表示运行成功。
    
     040423206.jpg
    
     图E:运行存储过程后的调试信息
     我们也可以按照图F所示,从调试窗口上的下拉菜单中选择Database Output来显示输出结果。实际的输出和图F差不多。
    
     040423207.jpg
    
     图F:查看存储过程的输出结果
     参数
     现实中的存储过程要比我们的例子复杂的多。大部分实际应用的存储过程都可以接受或返回一个或多个参数。用VS.NET的调试器对其调试也非常简单,你可以看到添加不同参数后的代码运行效果。对需要输入参数的存储过程进行调试时,会有一个窗口弹出用来接受参数。
    
     图G是接收参数的对话框。本例中我选择的是需要输入起始和中止时间的存储过程(年度销售量),它会返回在该时间段内的销售总量。另外,在所输入的参数中,也可以选择NULL或DEFAULT,这可以检查在空值和默认值情况下,存储过程是否会出现问题。
    
     040423208.gif
    
     图G:带参数的调试过程
     总结
     VS.NET对存储过程进行开发、维护和调试的能力,使它完全代替了其它诸如SQL Server的Query Analyzer的工作。

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

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

mysql存储过程调试学习总结

Mysql调试存储过程最简单的方法 以前同事告诉我用临时表插入变量数据来查看,但是这种方法过于麻烦,而且Mysql没有比较好的调试存储过程的工具。今天google了下发现可以用select ...
  • bcbobo21cn
  • bcbobo21cn
  • 2016年05月06日 18:55
  • 2257

MySQL存储过程调试工具

下载专业版  :https://www.devart.com/dbforge/mysql/studio/download.html 安装:一路下一步即可 连接数据库选择对应编码  ...
  • zhanghongzheng3213
  • zhanghongzheng3213
  • 2016年05月20日 15:37
  • 4675

数据库-存储过程(概念、优缺点、分类)

(1)概念:     ① 存储过程(Stored Procedure)是一组为了完成特定功能的SQL语句集。经编译后存储在数据库 中。     ② 存储过程是数据库中的一个重要对象,用户通过指定存...
  • zdplife
  • zdplife
  • 2015年08月28日 16:39
  • 2309

为什么要用存储过程?

存储过程概念 存储过程是一些sql语句和控制语句组成的被封装起来的过程,它驻留在数据库中,可以被客户应用程序通过存储过程名字调用,也可以从另一个存储过程或触发器调用。 它的参数可以被传递和返回,与...
  • u010796790
  • u010796790
  • 2016年08月12日 19:59
  • 402

PLSQL如何调试存储过程

1. 首先在PL/SQL的左侧资源栏中展开Procedures项(图中位置1),然后再其上面的搜索框中(图中位置2)输入存过名称的关键词,按回车键搜索要调试的存过,不停的回车,直到找到想要调试的存过。...
  • u010191034
  • u010191034
  • 2016年02月27日 21:59
  • 1041

ORACLE存储过程多次调试,不定时卡死

基本要素(时间、用户、问题) 研发在进行一个过程的调试,反馈该过程调试不定期卡死,点取消无反映,从新开一个测试窗口依然卡死,怀疑是数据库问题,请求诊断。 问题分析 步骤一:问题验证      ...
  • wenzhongyan
  • wenzhongyan
  • 2014年09月12日 11:31
  • 5904

什么是存储过程,存储过程的作用及优点

存储过程(Stored Procedure)是一组为了完成特定功能的SQL 语句集,经编译后存储在数据库。中用户通过指定存储过程的名字并给出参数(如果该存储过程带有参数)来执行它。1.存储过程只在创造...
  • z1729734271
  • z1729734271
  • 2016年10月11日 09:16
  • 3927

数据库存储过程缺点总结

数据库存储过程缺点总结,及各位讨论经典语录 1、数据库移植不方便: 2、大量采用存储过程进行业务逻辑的开发致命的缺点是很多存储过程不支持面向对象的设计,无法采用面向对象的方式将业务逻辑进行封装...
  • wu_zz
  • wu_zz
  • 2017年05月04日 22:26
  • 373

存储过程在数据库中测试

想必存储过程大家都非常熟悉了,做系统的时候适当的使用存储过程会起到事半功倍的效果,那么判断你写的存储过程是否正确呢?除了写入系统进行运行以外,还有什么方法呢?在数据库中同样可以进行测试,这样就会减少一...
  • lfh15732626246
  • lfh15732626246
  • 2016年03月20日 21:23
  • 1202
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:如何使用VS.NET调试数据库存储过程
举报原因:
原因补充:

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