2009-06-30 168 views
5

我在轉換過程中以編程方式創建SQL Server數據庫。如果轉換代碼失敗,我想刪除/刪除數據庫。如果我在SQL Server Management Studio 2005中使用數據庫的快捷菜單,則「刪除」選項將被禁用。 DROP DATABASE命令也失敗,並顯示消息「Can not drop database」XYZ「,因爲它當前正在使用中。」刪除SQL Server數據庫

我已關閉並重新啓動SQL Server,並且數據庫不會丟失。

任何方向?

回答

10

一個新的搜索發現,工作下面的腳本:

ALTER DATABASE [dbname] 
SET SINGLE_USER --or RESTRICTED_USER 
WITH ROLLBACK IMMEDIATE; 
GO 
DROP DATABASE [dbname]; 
GO 

一定是一些被停止下降打開的事務。問題解決了。

+0

如果這段代碼不起作用,請參考這裏:https://stackoverflow.com/questions/48475066/unable-to-drop-database-in-sql-server-20120 - 我試過了上面的代碼,理想情況下這段代碼應該工作,但它不適合我! – 2018-01-27 11:01:26

0

你的對話需要多長時間..也許你應該考慮使用交易,如果這是一個選項。當您的對話失敗時,請將事務回滾。