如何以编程方式取消SQL Server执行过程

假设您已从代码中执行以下(长时间运行)过程:

int processID = DB.Execute(SQL); //some long running sql statement

有没有办法以编程方式调用SQL Server取消进程,如果它花了太长时间(有点像在QueryAnalyzer中点击“停止”按钮)?

//cancel the process if it is taking too long
DB.Execute("sp_CancelProcess @ProcessID=" + processID);

解决方法

使用
KILL进程ID:

KILL 53;

请注意,你不能杀死自己的spid,你需要创建另一个连接,然后从中杀死spid

如果你试图杀死自己的SPID,你将收到以下错误

Server: Msg 6104,Level 16,State 1,Line 1
Cannot use KILL to kill your own process.

dawei

【声明】:唐山站长网内容转载自互联网,其相关言论仅代表作者个人观点绝非权威,不代表本站立场。如您发现内容存在版权问题,请提交相关链接至邮箱:bqsm@foxmail.com,我们将及时予以处理。