还原数据库前准备

Create   proc   killspid   (@dbname   varchar(20)) 

as 

begin 

declare   @sql   nvarchar(500) 

declare   @spid   int--SPID   值是当用户进行连接时指派给该连接的一个唯一的整数 

set   @sql= 'declare   getspid   cursor   for   

select   spid   from   sysprocesses   where   dbid=db_id( '''+@dbname+ ''') ' 

--sysprocesses   包含有关   SQL   Server   进程的信息。 

exec   (@sql) 

open   getspid 

fetch   next   from   getspid   into   @spid 

while   @@fetch_status <> -1--如果FETCH   语句没有执行失败或此行不在结果集中。 

begin 

exec( 'kill   '+@spid)--终止正常连接 

fetch   next   from   getspid   into   @spid 

end 

close   getspid 

deallocate   getspid 

end 

GO


当你遇到以下提示时,可以使用:

因为数据库正在使用,所以无法获得对数据库的独占访问权

你可能感兴趣的:(数据库)