如何終止SQL Server中的使用者程序(終止某一個使用者訪問sql server資料庫)
在很多情況下,往往會要求資料庫管理員終止SQL Server中的使用者程序,例如在停止某個資料庫的運作時,或者還原資料庫之前,或者長時間執行活動事務等情況下。資料庫管理員通常會使用SQL Server中提供的“KILL”命令來完成任務。
但是,SQL Server提供的“KILL”命令靈活性不夠,不能在一次性結束多個會話,一次只能解決掉一個會話。本文將為大家介紹如何建立一個簡單的儲存過程來實現同時終止多個會話、結束連續的會話和結束連線到資料庫的所有會話等功能。
首先,我們在主資料庫中建立“KILL2”這個程序,程式碼如下所示(參考圖一):
USE [master] use master end if CHARINDEX(',',@param) <> 0 if CHARINDEX('=',@param2) <>0 fetch dbcursor into @spid end if CHARINDEX('-',@param)=0 and CHARINDEX(',',@param) = 0 and CHARINDEX('=',@param)=0 end |
圖一