关闭用户打开的进程处理

来源:互联网 发布:淘宝广场舞健身球 编辑:程序博客网 时间:2024/05/22 10:48
  1. --关闭用户打开的进程处理    
  2. USE master   
  3.   
  4. go    
  5.   
  6. IF EXISTS (SELECT * FROM dbo.sysobjects WHERE id = object_id(N'[dbo].[p_killspid]'and OBJECTPROPERTY(id, N'IsProcedure') = 1)   
  7.     DROP PROCEDURE [dbo].[p_killspid]   
  8. go   
  9. create   proc   p_killspid    
  10. @dbname   varchar(200) --要关闭进程的数据库名   
  11. as        
  12. declare   @programName     nvarchar(200),    
  13. @spid   nvarchar(20)    
  14.   
  15. declare   cDblogin   cursor   for    
  16. select   cast(spid   as   varchar(20))  AS spid   from   master..sysprocesses   where   dbid=db_id(@dbname)    
  17. open   cDblogin   
  18. fetch   next   from   cDblogin   into   @spid    
  19. while   @@fetch_status=0    
  20. begin       
  21. --防止自己终止自己的进程     
  22. --否则会报错不能用KILL 来终止您自己的进程。      
  23. IF  @spid <> @@SPID   
  24.     exec'kill   '+@spid)    
  25. fetch   next   from  cDblogin   into   @spid    
  26. end        
  27. close   cDblogin    
  28. deallocate   cDblogin   
  29. go    
  30.   
  31.   
  32. --用法        
  33. exec   p_killspid     'fdoam'  
原创粉丝点击