SQL Server 删除数据库

2025年3月17日 | 阅读 3 分钟

有时,数据库与服务器实例无关或已过时。 在这种情况下,我们可以从服务器中删除它们。 删除数据库时,它也会永久删除所有表、索引和约束。 因此,我们在删除数据库时应该非常小心,因为我们会丢失数据库中可用的所有数据。 如果服务器实例上没有数据库,SQL Server 将抛出错误消息。

我们主要可以通过两种方式在 SQL Server 中删除数据库

  • Transact-SQL 命令
  • SQL Server Management Studio

让我们详细讨论它们。

使用 T-SQL 命令删除数据库

SQL Server 允许用户使用以下语法从服务器实例中删除数据库

如果我们要在一个命令中删除多个数据库,我们可以使用逗号分隔的数据库名称列表,如下所示

在此语法中,database_name 指示我们要从服务器实例中删除的数据库的名称。 IF EXIST 是一个可选子句,指示如果数据库已存在于服务器中,则将被删除。

在删除数据库之前,我们必须记住以下几点

  1. DROP DATABASE 命令将删除数据库以及数据库的物理磁盘文件。 因此,如果将来需要恢复数据库,我们需要保留数据库备份。
  2. DROP DATABASE 语句应在自动提交模式下运行。 它不能在显式或隐式事务中使用,因为自动提交是默认的事务管理模式。
  3. 我们无法删除当前活动的数据库。 如果我们这样做,SQL Server 将发出以下错误
SQL Server DROP Database

示例

让我们了解如何删除服务器实例上不再需要的数据库。 首先,我们将使用以下命令列出存储在数据库引擎中的所有数据库

执行该语句将显示所有数据库的列表

SQL Server DROP Database

如果我们要删除 'DemoDb' 数据库,我们可以使用以下语句

执行命令后,单击刷新按钮或按键盘上的 F5 以更新对象列表。 我们可以看到 DemoDb 数据库不再可用

SQL Server DROP Database

使用 SQL Server Management Studio 删除数据库

我们可以借助以下步骤在 SSMS 中删除数据库

步骤 1: 以管理员模式打开 SSMS,以避免任何权限问题。 我们将看到以下屏幕,我们需要单击连接按钮才能继续。

SQL Server DROP Database

步骤 2: 连接成功后,对象资源管理器窗口将显示在屏幕的左侧。 要查看数据库文件夹,如果未展开,请单击 "+" 按钮。

SQL Server DROP Database

步骤 3: 下一步是通过单击加号 (+) 按钮来展开数据库文件夹。 我们将看到当前服务器实例中所有可用的数据库。

SQL Server DROP Database

步骤 4: 下一步是删除所需的数据库。 假设我们要删除 DemoDb 数据库。 为此,右键单击所选数据库,然后从上下文菜单中选择删除选项。 请参见下图

SQL Server DROP Database

步骤 5: 单击删除选项后,我们将看到一个删除模型对象框,以确认删除过程。 单击确定按钮,从 SQL Server 中永久删除数据库。

SQL Server DROP Database

步骤 6: 如果一切正确,则将删除所选数据库。 我们可以通过单击刷新按钮或按键盘上的 F5 来更新对象列表,从而验证这一点。 我们可以看到 DemoDb 数据库不再可用

SQL Server DROP Database
下一个主题SQL Server 创建表