断开指定数据库连接

2022年8月10日

use   master
go

if   exists   (select   *   from   dbo.sysobjects   where   id   =   object_id(N'[dbo].[p_killspid]’)   and   OBJECTPROPERTY(id,   N’IsProcedure’)   =   1)
drop   procedure   [dbo].[p_killspid]
GO

create   proc   p_killspid
@dbname   varchar(200) –要关闭进程的数据库名
as
declare   @sql     nvarchar(500)
declare   @spid   nvarchar(20)

declare   #tb   cursor   for
select   spid=cast(spid   as   varchar(20))   from   master..sysprocesses   where   dbid=db_id(@dbname)
open   #tb
fetch   next   from   #tb   into   @spid
while   @@fetch_status=0
begin
exec(‘kill   ‘+@spid)
fetch   next   from   #tb   into   @spid
end
close   #tb
deallocate   #tb
go

–用法

exec   p_killspid     ‘数据库名’

声明: 本文采用 BY-NC-SA 协议进行授权. 转载请注明转自: 断开指定数据库连接
本文的评论功能被关闭了.