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

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按钮可以方便的测试数据库的可连接性和连接正确性。
    
    
    
     图A:Visual Studio .NET的Server Explorer
    
    
    
     图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数据库进行存储过程调试的例子。在这个例子中,存储过程会从数据库中返回十个价格最高的产品。
    
    
    
     图C:通过Server Explorer调试存储过程
     当调试过程开始后,就跟日常调试C#或VB.NET代码没什么不同了。图D是刚才的存储过程在调试模式下的视图。相应的选项可以通过Debug下拉菜单或者快捷键来实现。以下是几个与调试相关的快捷键:
    
    
     F5:继续
     Shift + F5:停止调试
     F11:单步进入
     F10: 单步跳过
     Shift + F11: 单步跳出
    
    
    
     图D:调试模式下的存储过程
     另外,可以加入断点和查看点,以监视调试过程。在VS.NET工作区的下方,可以看到调试过程的输出结果。图E 显示了对存储过程进行调试后的VS.NET工作区。从图上我们能看到调试信息:存储过程运行的返回值是0,这表示运行成功。
    
    
    
     图E:运行存储过程后的调试信息
     我们也可以按照图F所示,从调试窗口上的下拉菜单中选择Database Output来显示输出结果。实际的输出和图F差不多。
    
    
    
     图F:查看存储过程的输出结果
     参数
     现实中的存储过程要比我们的例子复杂的多。大部分实际应用的存储过程都可以接受或返回一个或多个参数。用VS.NET的调试器对其调试也非常简单,你可以看到添加不同参数后的代码运行效果。对需要输入参数的存储过程进行调试时,会有一个窗口弹出用来接受参数。
    
     图G是接收参数的对话框。本例中我选择的是需要输入起始和中止时间的存储过程(年度销售量),它会返回在该时间段内的销售总量。另外,在所输入的参数中,也可以选择NULL或DEFAULT,这可以检查在空值和默认值情况下,存储过程是否会出现问题。
    
    
    
     图G:带参数的调试过程
     总结
     VS.NET对存储过程进行开发、维护和调试的能力,使它完全代替了其它诸如SQL Server的Query Analyzer的工作。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值