使用Execute AS以其他用户身份终止查询执行

时间:2019-12-14 21:12:40

标签: sql-server tsql

我正在尝试终止自己的耗时查询执行程序,但这是说我无法终止自己的进程,如Microsoft在备注部分所述:

  

备注   KILL通常用于结束阻塞其他进程的进程   带锁的重要过程。 KILL也可以用来停止   正在执行使用必要系统的查询的过程   资源。系统进程和运行扩展存储的进程   程序无法结束。

     

小心使用KILL,尤其是在运行关键进程时。   您无法杀死自己的进程。

我使用以下T-SQL命令:

EXECUTE sp_who2 'active'
Kill <SPID VALUE>

无论如何,如果我以另一个用户身份登录到SQL Server,方法是打开一个新会话并在上面的两个命令中键入以上内容。

现在,我想这样做,而无需与另一个用户打开新会话。因此,从打开的会话中,我正在执行以下T-SQL命令:

EXECUTE AS LOGIN = 'sa';
EXECUTE sp_who2 'active'
KILL <SPID VALUE>
REVERT;

但是它们不起作用。为什么?

0 个答案:

没有答案