2011-01-24 77 views
7

我正在执行'.net'代码中的一个存储过程。由于数据量很大,执行时间太长。有没有办法阻止这种执行从C#代码?停止从.net执行SQL查询代码

换句话说,如果我们从数据库本身执行查询,有一个选项可以停止它的执行,但是在代码中它有可能吗?

+0

您可以在存储过程中添加过滤器吗?尝试阅读更多关于sql最佳实践.. – Crimsonland 2011-01-24 07:48:06

回答

8

是的,你可以使用SqlCommand.Cancel取消查询。但是,该命令必须在另一个线程中运行(否则仅在命令完成后才会调用Cancel)。

如果要在指定的时间限制内运行时取消此查询,也可以指定CommandTimeout

1

你可以做myCommand.Cancel(),而这将工作最好的,即使我在过去面对类似的问题,并使用myCommand.Cancel()我已经解决了我的问题。 :) :)