2009-06-30 115 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

你的对话需要多长时间..也许你应该考虑使用交易,如果这是一个选项。当您的对话失败时,请将事务回滚。