无法删除 SQL Server 2012 中的数据库
Unable to drop database in SQL Server 2012
我之前创建了一个示例数据库,现在我想删除该数据库,但它没有被删除。我在网上搜索但没有找到任何有效的解决方案。
使用 T-SQL,我试过:
USE [Sample]
ALTER DATABASE [Sample]
SET SINGLE_USER
WITH ROLLBACK IMMEDIATE;
GO
DROP DATABASE [Sample]
使用 GUI,出现以下错误:
我关闭了现有连接然后也发生了这种情况,这是我的本地计算机。请帮帮我!
使用此代码:
USE MASTER
GO
ALTER DATABASE Sample
SET multi_user WITH ROLLBACK IMMEDIATE
GO
ALTER DATABASE Sample
SET SINGLE_USER WITH ROLLBACK IMMEDIATE
GO
DROP DATABASE Sample
GO
关闭您的 SSMS,打开一个新实例,然后尝试以下操作,将整个内容复制粘贴到一个新查询中 window 并立即执行:
USE [master];
GO
ALTER DATABASE [Sample] --<-- go back into Multi-user mode
SET MULTI_USER;
GO
ALTER DATABASE [Sample] --<-- Will disconnect everyone 1st
SET SINGLE_USER -- and will leave the database in single user mode
WITH ROLLBACK IMMEDIATE;
GO
USE [Sample]; -- quickly grab that single connection before any
GO -- other process does
USE [master]; -- Connect to master db, connection
GO -- This also means disconnect Sample DB
DROP DATABASE [Sample] -- At this point there should be no active connections
GO -- to this database and can be dropped
另一种删除数据库的方法(无需编码)
- 在 Microsoft SQL Server Management Studio 中,右键单击要删除的数据库(在您的情况下为示例数据库),然后单击 Select Properties.
- Select“选项”页面。
- 在其他选项下,找到'州下的'限制用户'选项'.
- 将其值 MULTI_USER 更改为 SINGLE_USER
- 然后按确定并重试(或再次右键单击数据库并单击删除)
使用此代码应该有所帮助。
ALTER DATABASE [dbname]
SET SINGLE_USER --or RESTRICTED_USER
WITH ROLLBACK IMMEDIATE;
GO
DROP DATABASE [dbname];
GO
我之前创建了一个示例数据库,现在我想删除该数据库,但它没有被删除。我在网上搜索但没有找到任何有效的解决方案。
使用 T-SQL,我试过:
USE [Sample]
ALTER DATABASE [Sample]
SET SINGLE_USER
WITH ROLLBACK IMMEDIATE;
GO
DROP DATABASE [Sample]
使用 GUI,出现以下错误:
我关闭了现有连接然后也发生了这种情况,这是我的本地计算机。请帮帮我!
使用此代码:
USE MASTER
GO
ALTER DATABASE Sample
SET multi_user WITH ROLLBACK IMMEDIATE
GO
ALTER DATABASE Sample
SET SINGLE_USER WITH ROLLBACK IMMEDIATE
GO
DROP DATABASE Sample
GO
关闭您的 SSMS,打开一个新实例,然后尝试以下操作,将整个内容复制粘贴到一个新查询中 window 并立即执行:
USE [master];
GO
ALTER DATABASE [Sample] --<-- go back into Multi-user mode
SET MULTI_USER;
GO
ALTER DATABASE [Sample] --<-- Will disconnect everyone 1st
SET SINGLE_USER -- and will leave the database in single user mode
WITH ROLLBACK IMMEDIATE;
GO
USE [Sample]; -- quickly grab that single connection before any
GO -- other process does
USE [master]; -- Connect to master db, connection
GO -- This also means disconnect Sample DB
DROP DATABASE [Sample] -- At this point there should be no active connections
GO -- to this database and can be dropped
另一种删除数据库的方法(无需编码)
- 在 Microsoft SQL Server Management Studio 中,右键单击要删除的数据库(在您的情况下为示例数据库),然后单击 Select Properties.
- Select“选项”页面。
- 在其他选项下,找到'州下的'限制用户'选项'.
- 将其值 MULTI_USER 更改为 SINGLE_USER
- 然后按确定并重试(或再次右键单击数据库并单击删除)
使用此代码应该有所帮助。
ALTER DATABASE [dbname]
SET SINGLE_USER --or RESTRICTED_USER
WITH ROLLBACK IMMEDIATE;
GO
DROP DATABASE [dbname];
GO