SqlServer删除库

报错详情:

SQL Server无法删除数据库XXX,因为该数据库当前正在使用。

SqlServer删除库_第1张图片

 出现原因:

有其它进程在占用该数据库。

步骤:

1、挨个杀掉占用进程。

2、删除数据库。

USE MASTER    
GO    
     
DECLARE @dbname SYSNAME    
SET @dbname = 'databasename' --这个是要删除的数据库库名    
     
DECLARE @s NVARCHAR(1000)    
DECLARE tb CURSOR LOCAL   
FOR  
    SELECT s = 'kill   ' + CAST(spid AS VARCHAR)  
    FROM   MASTER..sysprocesses  
    WHERE  dbid = DB_ID(@dbname)    
     
OPEN   tb      
FETCH   NEXT   FROM   tb   INTO   @s    
WHILE @@fetch_status = 0  
BEGIN  
    EXEC (@s)   
    FETCH NEXT FROM tb INTO @s  
END    
CLOSE   tb    
DEALLOCATE   tb    
  
EXEC ('drop   database   [' + @dbname + ']')    

 

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