簡體   English   中英

如何使用C#刪除“正在使用”的SQl Server數據庫?

[英]How To Delete SQl Server database while it is “In Use” using C#?

我正在嘗試刪除sql server數據庫。 如果不使用它將被刪除。 如果數據庫正在使用中,則會發生一個異常,說can not delete database while it is in use 我們可以使用選項“ Close existing connection從Management Studio中刪除使用數據庫。 但是我們如何使用C#代碼來做到這一點呢?

ALTER DATABASE AdventureWorks2012
SET SINGLE_USER
WITH ROLLBACK IMMEDIATE;

DROP DATABASE AdventureWorks2012;

通過在上面的查詢中編寫腳本文件,然后執行以下腳本文件:

string sqlConnectionString = "Data Source=(local);Initial Catalog=AdventureWorks;Integrated Security=True";
            FileInfo file = new FileInfo("C:\\myscript.sql");
            string script = file.OpenText().ReadToEnd();
            SqlConnection conn = new SqlConnection(sqlConnectionString);
            Server server = new Server(new ServerConnection(conn));
            server.ConnectionContext.ExecuteNonQuery(script);

在MS SQL Server上啟動所有用戶的簡單方法是:

ALTER DATABASE [MyDB] SET Single_User WITH Rollback Immediate
GO

通過您的代碼觸發此查詢,然后繼續:-

資源:-

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM