用于从 Visual Basic 的调试存储过程的 INF: 提示

文章翻译 文章翻译
文章编号: 170496 - 查看本文应用于的产品
本文已归档。它按“原样”提供,并且不再更新。


本文的一个 Microsoft Visual Basic.net 版本,请参阅下面 Microsoft 知识库中相应的文章:

316549如何: 调试存储过程在 Visual Studio.net 中
展开全部 | 关闭全部

本文内容

概要

与 Visual Basic 5.0 版或更高版本中,您可以调试 SQL Server 存储过程。本文包含的各种类型的提示可能有助于您配置在 Visual Basic 5.0 或更高版本的企业版 TRANSACT-SQL (T-SQL) 调试器的列表。

更多信息

对于调试,请使用以下信息:
  • 有关使用调试器 SQL Server 2000 时可能出现的问题单击下面文章编号,以查看 Microsoft 知识库中相应的文章:
    310650信息: 用 Visual Basic T-SQL 调试程序和 SQL Server 2000 已知问题
  • 若要调试,您必须具有企业版的 Visual Basic 5.0 或更高版本,不专业版或标准的版本。
  • 若要将所有正确的组件必须具有 SQL Server 6.5 版或 SQL Server 6.5 Service Pack 2 或更高版本。SQL Server 6.5 Service Pack 4 随 Visual Studio 6.0,并且在两个磁盘上找到 Sql\Servpak 目录下。您可以从以下网址获得最新的 SQL Server 服务包:
    http://msdn.microsoft.com/support
  • 在 Windows NT 用户帐户下运行必须 SQL Server,本地 Windows NT 计算机的管理员用户帐户或组,建议。 为了获得最佳的性能运行是本地管理员组的一部分的域帐户 SQL Server。在本地系统帐户下执行 SQL Server 时,调试器将无法正常工作。
  • 分布式的组件对象模型 (DCOM) 协议的可用之前,远程自动化的传统模式用于平台之间进行通讯。远程自动化是 implementated faciliate Visual Basic T-SQL 调试程序和 SQL Server 之间的通信。若要确保所有远程自动化组件在安装过程中正确地放在 $ 位置中请确保选择远程自动化、 连接设计器、 远程数据对象 (RDO) 控制和 SQL 调试的所有选项在客户端上的企业功能下。

    注:在 SQL Server 7.0 或 Visual Interdev 6.0 附带 T-SQL 调试程序是构建在较新的 DCOM 协议和机制。要安装这些组件 SQL Server 7.0 请确保选中了在安装过程中显示调试器界面选项。
  • 安装所需的远程自动化服务器端组件。这些组件位于 CliSrv\Tsql\SrvSetup 目录 Visual Basic 企业版 5.0 版 CD 的和企业版 Visual Basic 6.0 版 CD 二上 sqdbg_ss\ 目录下。对于 Visual Basic 6.0 运行 $ sqdbg_ss\ 目录下找到该 setup.exe。对于 Visual Basic 5.0 在 Windows NT 4.0 运行 Sdi_nt4.exe 安装程序。为 Windows NT Server 3.51 的计算机,您必须手动复制并注册所需的文件。有关如何执行此操作的完整说明,请参阅该 Readme.txt 文件位于 CliSrv\Tsql\SrvSetup 目录中。完成此操作后后,请确保 Sdi.dll 文件位于 Sqlservr.exe 所在的同一目录中。
  • 您不能使用 Visual Basic 企业版 T-SQL 调试程序调试的使用 Sdi50.dll 或 Sdi60.dll 调试组件 SQL Server,如前所述,必须安装了正确的 Sdi.dll 组件。每个 DLL 有一个单独的接口 ; 因此唯一标识符 (UID) 用来注册此 DLL 是不同于所使用的 Sdi.dll。
  • 请确保在服务器计算机上启动的远程过程调用 (RPC) 服务。要做到这一点,可以打开双面板控件-单击 服务,并检查以确保在远程过程调用 (RPC) 服务和 $ 远程过程调用 (RPC) 定位器服务正在运行,并设置为自动启动。
  • 如果您的客户端计算机正在运行具有支持 DCOM 的客户端平台,如 Windows 95、 Windows 98 和 Windows NT 4.0 或更高版本,运行 dcomcnfg 命令并确保每个人都 Vbsdicli.exe 文件的执行和访问权限。如果客户端计算机正在运行 Windows 95,您可以从下列下载 DCOM 配置实用程序:
    http://msdn2.microsoft.com/en-us/library/default.aspx
  • 如有可能测试 T-SQL 调试程序在 SQL Server 时,安装以确保它工作正常的同一台计算机上。
  • 请检查该计算机可以连接到另一个,并且您有权使用该 Windows NT 的计算机上的资源。 例如对于如果网络使用 TCP/IP,使用 PING 实用程序以确认客户端可以与该 SQL Server 进行通信。您也可以通过从客户端计算机上 (即已安装的 Visual Basic) 的某个驱动器映射到该 SQL Server 测试这种通信。
  • 若要能够使用断点的 T-SQL 调试器在调试会话期间使用的客户端游标。您可以在 UserConnection 的属性上设置此选项在杂项选项卡下的对象。
  • 如果 SQL Server 服务停止并重新启动自动化管理器将继续在同一台计算机上运行时,您将在 Windows NT 事件日志中的意外的错误消息上看到该 SQL Server 自动化管理器会尝试连接到 SQL Server 下一次。此错误消息将具有 MSDEVSDI 的源。如果该案例,该 SQL Server 上使用任务管理器来停止自动化管理器 (Autmgr32.exe),并让该 Sdi.dll,通过在 DCOM 在服务器上的 Autprx32.dll 负载 Autmgr32.exe 协议机制。
  • 请确保不在命令提示符下,在客户端上启动远程自动化管理器 (Autmgr32.exe)。允许通过 COM 服务控制管理器机制 (rpcss.exe) 在服务器上加载 Autmgr32.exe Sdi.dll 和 Autoprx32.dll 文件。
  • 在 Windows NT 事件日志中可能包含扩展的错误信息。专门,事件 ID 7 直接与前面的第三个和第十一个项目相关。该错误的文本如下所示:
    事件 ID # 7: 发生意外的错误 (xxxxxxxx)。调试将被关闭的连接 %。服务器执行失败。
    下 MSDEVSDI 生成事件项。
  • 不要在生产服务器上进行调试。单步调试器执行时有其他人需要的因此带来不利影响的其他客户端性能和操作可以锁定的资源。
  • 您可以将像 @ @ ERROR 的全局变量添加到监视窗口。
  • 图像数据类型不是一个数据类型选项,以便将作为参数传递。永远不会显示未分配的参数对话框。您不能编辑或在监视窗口中显示的文本数据类型。
  • 使用 T-SQL 调试程序可以无需编写代码调试存储的过程。但是,使用 T-SQL 调试程序执行 Visual Basic 代码中的 '运行时调试' 时, 它可以执行一个 RDO 上仅连接。
  • 若要配置为运行时调试,请执行下列操作:

    1. 在该外接程序管理器,外接程序菜单下确保 Visual Basic T-SQL 调试程序时可用。
    2. 在 Visual Basic 工具 菜单上单击 T-SQL 调试程序选项
    3. 请确保在"自动进入并单步执行存储过程通过 RDO 连接"选项处于启用状态。
    4. 若要使用 T-SQL 调试程序,则必须使用一个 SQL Server 晚于 2.65.0203 ODBC 驱动程序版本。

引用

有关详细的信息,请参阅下面 Microsoft 知识库中相应的文章:
166280DOC: T-SQL 调试程序服务器安装程序提供不正确的位置

179023错误: T-SQL 调试器挂起时用户具有无执行权限

181854FILE: VB5cli.exe 固定 Visual Basic 5.0 控制安装问题

175868错误: 在与用户帐户的 NT T-SQL 调试程序不能运行

172099PRB: T-SQL-运行远程和本地 SQL 调试

Q172099信息: 用 Visual Basic T-SQL 调试程序和 SQL Server 2000 已知问题

属性

文章编号: 170496 - 最后修改: 2013年10月7日 - 修订: 4.3
这篇文章中的信息适用于:
  • Microsoft SQL Server 6.5 标准版
  • Microsoft SQL Server 7.0 标准版
关键字:?
kbnosurvey kbarchive kbmt kbinfo kbusage KB170496 KbMtzh
机器翻译
注意:这篇文章是由无人工介入的微软自动的机器翻译软件翻译完成。微软很高兴能同时提供给您由人工翻译的和由机器翻译的文章, 以使您能使用您的语言访问所有的知识库文章。然而由机器翻译的文章并不总是完美的。它可能存在词汇,语法或文法的问题,就像是一个外国人在说中文时总是可能犯这样的错误。虽然我们经常升级机器翻译软件以提高翻译质量,但是我们不保证机器翻译的正确度,也不对由于内容的误译或者客户对它的错误使用所引起的任何直接的, 或间接的可能的问题负责。
点击这里察看该文章的英文版: 170496
Microsoft和/或其各供应商对于为任何目的而在本服务器上发布的文件及有关图形所含信息的适用性,不作任何声明。 所有该等文件及有关图形均"依样"提供,而不带任何性质的保证。Microsoft和/或其各供应商特此声明,对所有与该等信息有关的保证和条件不负任何责任,该等保证和条件包括关于适销性、符合特定用途、所有权和非侵权的所有默示保证和条件。在任何情况下,在由于使用或运行本服务器上的信息所引起的或与该等使用或运行有关的诉讼中,Microsoft和/或其各供应商就因丧失使用、数据或利润所导致的任何特别的、间接的、衍生性的损害或任何因使用而丧失所导致的之损害、数据或利润不负任何责任。

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com