2012-10-25 14 views
4

我想斷開所有用戶與SQL Server的連接,但sa除外。如何斷開sql服務器中除sa以外的所有用戶?

的需求是這樣的:

我寫了一個數據庫維護工具爲我的ERP。在運行之前,我需要讓所有用戶註銷。 因此,我想給他們一個消息(通過ERP)「5分鐘內斷開連接,請保存您的工作並註銷或者您將被踢出去」,然後在5分鐘後在服務器上運行命令,斷開所有人。 因爲db維護實用程序將使用該用戶進行數據庫連接,所以我希望「sa」或反正「1個特定用戶」不要斷開連接。

我發現這一點:

use master 
alter database MyDatabase set offline with rollback immediate 

但怎麼說「的一個特定的用戶是個例外」?

回答

5

使用single_user代替offline

alter database [DatabaseName] set single_user with rollback immediate 

初始 「單用戶」 將是一個發出alter database命令。然後,您可以繼續僅允許特定用戶登錄:

alter login [LoginName] disable 
+0

完美! single_user是我一直在尋找的。 – LaBracca

+4

ALTER DATABASE [DataBaseName] SET MULTI_USER將恢復正常生活... – LaBracca

相關問題