删除数据库时总是提示“该数据库正在被使用”

时间:2022-04-01 22:14:32
现有数据库 DB1,我想删除,可是执行“Drop databse DB1”时,系统提示“DB1正在被使用”,返回一个错误。
找了半天也不知道到底哪个用户在使用DB1这个数据库,
各位兄弟谁知道,帮帮忙,我真不想重装sqlserver。

7 个解决方案

#1


这种情况我也遇到过,你这样试试看:

先将SQL服务停止,然后再开启,最后删除

#2


在DB1正在打開時﹐運行不了Drop databse DB1

use master
Drop databse DB1

go

#3


你在哪个数据库下删除的DB1,如果你当前数据库是DB1,而你又要删除数据库,那。。。。。

用楼上的办法试试

#4


在企业管理器里断开与该数据库的链接,然后在删除

#5


在企业管理器里面:选中要删除的数据库,右键->所有认为->分离数据库->在弹出的界面先点击"清除",然后"确定",最后在windows里面将数据文件删除就OK

#6


只要把你的企业管理器关掉就可以了.其实企业管理器也是一个客户端访问工具.

#7


--查询分析器中执行下面的语句就行了.

use master
go

declare @dbname sysname
set @dbname='DB1' --这个是要删除的数据库库名

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+']')

#1


这种情况我也遇到过,你这样试试看:

先将SQL服务停止,然后再开启,最后删除

#2


在DB1正在打開時﹐運行不了Drop databse DB1

use master
Drop databse DB1

go

#3


你在哪个数据库下删除的DB1,如果你当前数据库是DB1,而你又要删除数据库,那。。。。。

用楼上的办法试试

#4


在企业管理器里断开与该数据库的链接,然后在删除

#5


在企业管理器里面:选中要删除的数据库,右键->所有认为->分离数据库->在弹出的界面先点击"清除",然后"确定",最后在windows里面将数据文件删除就OK

#6


只要把你的企业管理器关掉就可以了.其实企业管理器也是一个客户端访问工具.

#7


--查询分析器中执行下面的语句就行了.

use master
go

declare @dbname sysname
set @dbname='DB1' --这个是要删除的数据库库名

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+']')