Microsoft SQL Server 7.0储存过程调试指南

发表于:2007-07-02来源:作者:点击数: 标签:
Microsoft SQL Server 7.0储存过程调试指南 摘要:描述了如何使用Microsoft Visual InterDev的SQL调试器来清除Microsoft SQL Server储存过程中的错误。 使用Visual InterDev清除储存过程和触发器中的错误 如果您正在使用Microsoft Visual Studio企业版,Visu

Microsoft SQL Server 7.0储存过程调试指南
 
摘要:描述了如何使用Microsoft Visual InterDev的SQL调试器来清除Microsoft SQL Server储存过程中的错误。

使用Visual InterDev清除储存过程和触发器中的错误
如果您正在使用Microsoft Visual Studio企业版,Visual InterDev包含有一个SQL调试器。您可以使用它象处理其他脚本或程序一样,清除SQL Server储存过程和触发器中的错误。但是,关于如何设定SQL调试以及调试器如何执行则有些不同。

对SQL调试进行设置
进行SQL设置的相关软件需求

您必须要有Visual Studio企业版。
您必须要执行SQL Server 6.5包含Server Pack 2或更高版本。我们建议使用7.0版。
SQL Server必须要在Microsoft Windows NT 4.0或更高的版本上执行。
您的工作站必须要执行Windows 95、Windows 98、Windows NT 4.0或更高版本。
要使用SQL调试,您必须对服务器和工作站进行适当的设置。您应该:

确定已经在SQL Server中安装了SQL调试组件。
建立一个在执行SQL Server计算机上有管理权限的Windows NT用户。
在服务器上设置分布式组件对象模型(DCOM),以供SQL调试使用。
确定客户端的DCOM设定支持SQL调试(只适用于Windows 95、98工作站)。
安装SQL服务器调试组件
SQL调试需要您安装在您的SQL Server的组件。这些组件是Visual Studio Enterprise版本的一部份。

安装SQL调试组件
在安装SQL Server的计算机上,启动Visual Studio企业版的设置程序。
安装向导根据是否已在计算机上安装服务器组件显示不同的选项。
如果服务器已经安装,在新增/删除选项中,选择服务器应用程序及工具。
如果没有安装其它的组件,选择下一步直到到达提供企业设置选项的页面。选择服务器应用程序和工具。
如果没有安装其它组件,选择下一步直到到达提供企业设置选项的页面。选择服务器应用程序和工具。
在下一个页面中,选择启动BackOffice安装向导,然后选择安装。
当显示BackOffice商业方案向导时,选择自定义安装,然后选择下一步。
继续按下一步直到看到提供一个安装组件清单的页面。除了以下组件之外,清除其余的组件:
SQL服务器调试。
MS数据访问组件。
Visual InterDev服务器。
按下安装。
设置一个调试用户
要使用SQL调试,您必须提供一个在执行SQL Server的计算机上有管理权限的Windows NT用户的帐号和密码。

设置一个用户以供SQL调试使用
在服务器的Windows控制台中,选择设置一个调试用户,然后选择服务。
选择MSSQL,然后选择启动。
选定登录帐号为设定值。如果这个选项设置为系统帐号,将之改为这个帐号,以域\帐号的形式输入拥有管理权限的用户的正确域和用户帐号。
如果已经改变了这个设定值,重新启动SQL服务器。
设置DCOM以供SQL调试使用
如果可以的话,请在机器中保留一份本机副本,那么就可以不需要使用DCOM来执行跨机器调试。

SQL调试使用分布式组件对象模型(DCOM),以便在您的客户端计算机和数据库服务器之间通信。因此必须设定DCOM以便让远程用户在调试器上附加一个处理程序。

默认情况下,在服务器上安装SQL Server时就会设置正确的DCOM设定值。但是,出于对执行SQL Server计算机的安全性的考虑,您可能要限制对调试的访问。

要在服务器上设定DCOM以供SQL调试使用
从服务器的Windows开始菜单,选择运行,然后在打开方框的提示符中键入Dcomcnfg.exe。
在分布式组件对象模型(Distributed COM)设置内容窗口中,选择预设安全性页面。在预设存取权限下选择编辑预设。
如果组Everyone尚未拥有权限,选择添加,然后以域\帐号的形式添加一个拥有管理权限的用户的域和用户帐号。
在添加了这个帐号后,检查SYSTEM。如果它还未出现在清单上,使用添加名称和组对话框中的选取清单添加。
如果已经对这个过程中描述的任何选项做了修改,重新启动SQL Server。
注意: 如果希望将帐号添加到远程服务器,而这个帐号不能执行调试,则可能该帐号的用户正在服务器计算机上执行Visual InterDev。

执行SQL调试
与清除其它种类程序的错误不同,不能清除储存过程或对正在执行的触发器程序。您可以在编辑器中打开这个过程,从那里清除错误。

在数据检查窗口中,在储存过程上按右键,然后选择调试。

编辑器会在其窗口内打开储存过程,然后在调试菜单选择调试命令。

在以调试模式打开编辑器窗口后,您可以像平常一样使用调试器指针。例如,您可以在本机窗口设定断点和逐步执行过程。您可以查看变量的数值。您还可以将表达式拖到Watch窗口以便在逐步执行指令或执行程序使用。SQL PRINT的结果显示在输出窗口中。

但是,SQL调试器与脚本使用的调试器有以下的不同:
Auto和Immediate窗口在对储存过程调试时是没有作用的。虽然您可以显示它们,Auto窗口将变成空的,并且Immediate窗口将不会允许您输入表达式。
您可以改变执行顺序,以便使用设置下一个语句指定。

如果您正在使用简单的SELECT语句 ─ 那些只会返回单一数值 ─ 返回的数值是一个可以在本机窗口查看的变量。然而,如果SELECT语句传回一个结果集,在调试器中就不会显示出来。此外,您可以在输出窗口查看结果集。

原文转自:http://www.ltesting.net