代码之家  ›  专栏  ›  技术社区  ›  larryq

VS2008中的调试锁定存储过程

  •  0
  • larryq  · 技术社区  · 16 年前

    我这里有一个奇怪的。我有一个.NET可执行文件,它在幕后调用一些存储过程。不管出于什么原因,当我调试时,其中一个存储过程会挂起。

    如果我在visual studio之外运行可执行文件,一切都会顺利,包括这个存储过程。当我调试的时候这个挂起了,而且它真的挂起了。如果我停止调试会话,ide将冻结,我必须通过taskmanager终止它。

    我知道哪个存储过程有问题,以及其中的实际语句这就是问题所在。它调用的update语句并不特别。我可以在sql management studio中运行相同的语句(以及存储过程本身),没有问题。而且,正如我提到的,exe在调试器之外运行得很好。

    如果我使用sql活动监视器来查看事情为什么挂起,那么等待类型是preemptive_debug。我不确定这是否有帮助,但如果你需要更多的信息,我会设法把它给你。

    我已经重新启动了我的机器(有问题的SQL服务器也在这个框中),但这没有做任何事情,也没有重建可执行文件。我在这件事上绞尽脑汁,如果你对下一步要检查什么有任何想法,我很乐意听你说。谢谢!

    1 回复  |  直到 16 年前
        1
  •  1
  •   Alex K.    16 年前

    可能vs正在尝试启动sql server自己的调试功能,但失败了(假设您尚未成功使用它)。

    您可以尝试在解决方案中禁用t-sql调试(与步骤4相反 here )