以前刚学数据库的时候比较苦恼这个问题,今天删除的时候又看见了,正好一起记录一下:

图形化方法:

1cc1cca2fda7754e45d1ebd86f8dea1f.png

命令行方法:

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干掉程序了

917d29ddfbc29681c457890148f029d3.png

Logo

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。

更多推荐