declare@dbname
nvarchar(200
);set
@dbname='
db1_snap
'begin
try--
***********************************==
--查詢當前資料庫所有連線並刪除
declare
@spid
int;
declare
@tempsql
nvarchar(200
);--
判斷臨時表是否存在,存在則刪除
if(object_id('
tempdb.dbo.#temp
','u
') is
notnull
)begin
drop
table #temp
end--
查詢活動的spid
select spid into #temp
from
master.sys.sysprocesses
where dbid =
db_id(@dbname
);--
迴圈並刪除所有活動spid
while((select
count(1) from #temp)>0)
begin
select
top(1) @spid
=spid from #temp
;
set@tempsql='
kill '+
cast(@spid
asvarchar(10
));
@tempsql
;
exec(@tempsql
);
delete
from #temp
where spid=
@spid
;end
drop
table #temp
--****************************************
--刪除資料庫
exec('
drop database '+
@dbname
'刪除成功';
endtry
begin
catch
'執行出錯,錯誤資訊:
error_message()
endcatch
sqlserver 檢視資料庫正在執行的命令
在sql中有時候我們需要檢視現在正在sql server執行的命令。在分析管理器或者microsoft sql server management studio中,我們可以在 管理 sql server日誌 活動監視器 中檢視。今天我們主要利用master.sysprocesses系統表來檢視。先看...
正在執行的SQL
sql server select spid session id,ecid,database db name sp.dbid user nt username,status er.status,wait wait type,individual query substring qt.text,er...
如何刪除所有正在執行的Docker容器
到現在為止 docker版本1.12 我們使用以下命令刪除所有正在執行的容器 如果我們要刪除卷,我們可以使用以下命令中的相應標記 v手動執行此操作 刪除所有已退出的容器 docker rm docker ps q f status exited 刪除所有已停止的容器 docker rm docker...