sqlserver “无法删除数据库,因为该数据库当前正在使用“问题解决【引用‘博客园’毒逆天的文章】

本文详细介绍了一种在 SQL Server 中使用命令行方法来安全删除指定数据库的过程,该过程包括终止所有对该数据库的连接并最终删除数据库本身。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

图形化方法:

命令行方法:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
use master   
go  
      
declare @dbname sysname   
set @dbname = 'BigValuesTest' --这个是要删除的数据库库名   
      
declare @s nvarchar(1000)   
declare tb cursor local  
for 
    select s = 'kill   ' cast(spid as varchar
    from   master.dbo.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 + ']')  

这个原理类似于操作系统里面通过pid干掉程序了

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值