免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 5345 | 回复: 10
打印 上一主题 下一主题

Sql Server 7.0储存过程调试 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2002-03-27 17:32 |只看该作者 |倒序浏览
如果您正在使用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安装向导,然后选择安装。

  当显示BackO ce商业方案向导时,选择自定义安装,然后选择下一步。
  
  继续按下一步直到看到提供一个安装组件清单的页面。除了以下组件之外,清除其余的组件:

  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语句传回一个结果集,在调试器中就不会显示出来。此外,您可以在输出窗口查看结果集。

论坛徽章:
0
2 [报告]
发表于 2002-03-27 22:02 |只看该作者
SQLServer2000不是提供了debuger嗎?

论坛徽章:
0
3 [报告]
发表于 2002-03-27 22:10 |只看该作者
SQLServer2000不是提供了debuger嗎?

论坛徽章:
0
4 [报告]
发表于 2002-03-28 00:37 |只看该作者
SQLServer2000的debuger在Query Analyzer上嗎?我還從來沒有使用過,也不知道怎么用.

看了一下,好像沒有,怎么進入並使用?

论坛徽章:
0
5 [报告]
发表于 2002-03-28 00:40 |只看该作者
調試存儲過程比較困難,我一般用print命令查看一些變量的值,很笨的方法,但比較有效果.
一直想有個好的調試存儲過程的方法.

论坛徽章:
0
6 [报告]
发表于 2002-03-29 21:45 |只看该作者

如果你有VISUAL STUDIO的企业版就可以。

使用VISUAL STUDIO企业版中的工具是可以直接调试存储过程的,就和调试应用程序一样。比如从VB的PROJECT-->ADD DB ENVIRONMENT,在里面把相应的存储过程加入,执行,就出现T-SQL DEBUGGER,需要参数的就填进去。

打完收工。 :p :rolleyes:

论坛徽章:
0
7 [报告]
发表于 2002-03-29 22:18 |只看该作者
TO:zhuzhichao
版主
SQLServer2000的debuger在Query Analyzer上嗎?我還從來沒有使用過,也不知道怎么用.

看了一下,好像沒有,怎么進入並使用?

论坛徽章:
0
8 [报告]
发表于 2002-03-29 22:49 |只看该作者
newsailor :

你也是用繁體?
你的SQL2000是繁體的嗎?

那我就好描述了.

Query Analyzer中:

\"工具\"        -->        \"物件搜索\"        -->        \"新增\"        -->       
在\"物件名稱\"中輸入你的存儲過程名        -->        在\"預存程序\"上打勾        -->        點\"立即查找\"button        -->

然後在找到的存儲過程上面點鼠標右鍵        -->        點\"偵錯\"        ......

论坛徽章:
0
9 [报告]
发表于 2002-03-29 23:40 |只看该作者
TO:zhuzhichao
版主
我的用的是 \"繁体win2000\"+英文sqlserver2000,我已經按照您的提示調試了一個存儲過程.界面很親和,很好用.有待進一步熟悉它.謝了.
還有,炎龍騎士,你寫給我的存儲過程(通過存儲過程提取表結构的文本信息)我已經下載並使用了.我有一個感触就是我以前對于系統表很不熟悉,看了您的過程,受益匪

论坛徽章:
0
10 [报告]
发表于 2002-03-30 00:01 |只看该作者
newsailor :

都是用繁體的兄弟.
何必這麼客氣,呵呵.
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP