如何中断正在运行中的存储过程  再相送300分

解决方案 »

  1.   

    1
    ----超过了30秒将会自动强制停止.
    SET LOCK_TIMEOUT 30000
    2 kill进程
    declare  @spid  int select @spid=spid from sysprocesses
    where loginame='xxxx'exec('kill  '+@spid)
    在kill前先用
    select dbname = case
    when dbid = 0 then null
    when dbid <> 0 then db_name(dbid)
    end, loginame from master..sysprocesses where hostname is not null
    group by  dbid,loginame
    看看是谁
      

  2.   

    select  dbname  =  case  
                                                               when  dbid  =  0  then  null  
                                                               when  dbid    <  >  0  then  db_name(dbid)  
                                                   end,  loginame  from  master..sysprocesses  where  hostname  is  not  null  
    group  by    dbid,loginame  
    请问一下能不能解释一下这句的意思
      

  3.   

    就是列出当前活动(即连接到服务器)的用户,如果加上spid字段就是进程的id,你也可以简单点用sp_who
      

  4.   

    不好意思,忘说了,是在sql server下的。
      

  5.   

    是不是不能在客户端不能kill自己的进程呀,还有我怎么只kill本用户指定的存储过程呀,谢谢