SQL - 删除数据库



SQL 的DROP DATABASE 语句用于删除现有的数据库以及所有数据,例如表、视图、索引、存储过程和约束。

SQL DROP 数据库语句

以下是在删除现有数据库之前需要记住的重要事项:

  • 确保在删除数据库之前已对数据库进行了适当的备份
  • 确保没有其他应用程序连接并使用此数据库。
  • 确保您具有删除数据库的必要权限。通常,管理员可以删除数据库。

语法

以下是SQL 中删除数据库的语法:

DROP DATABASE DatabaseName;

这里,DatabaseName 是要删除的数据库的名称。数据库名称在 RDBMS 中始终是唯一的。

示例

首先,让我们使用以下 SQL 查询在数据库系统中创建多个数据库:

CREATE DATABASE testDB1;
CREATE DATABASE testDB2;
CREATE DATABASE testDB3;
CREATE DATABASE testDB4;

让我们使用以下查询验证数据库是否已创建:

SHOW DATABASES;

这将列出所有可用的数据库

数据库
information_schema
mysql
performance_schema
testDB1
testDB2
testDB3
testDB4

现在,让我们尝试使用 SQL 的DROP DATABASE 语句删除testDB1 数据库:

DROP DATABASE testDB1;

删除testDB1 数据库后,我们可以使用 SQL 的SHOW DATABASES 语句验证它是否已删除:

SHOW DATABASES;

这将列出所有可用的数据库

数据库
information_schema
mysql
performance_schema
testDB2
testDB3
testDB4

就是这样!我们已成功在 SQL 中删除了一个数据库。

SQL DROP DATABASE IF EXISTS 语句

SQL 的DROP DATABASE IF EXISTS 语句包含一个条件,用于在尝试删除数据库之前检查数据库是否存在。如果数据库系统中不存在该数据库,则“DROP DATABASE IF EXISTS”语句不会引发错误,而是简单地终止而无需执行任何操作。

语法

以下是 SQL 中DROP DATABASE IF EXISTS 语句的语法:

DROP DATABASE IF EXISTS DatabaseName;

这里,DatabaseName 是要删除的数据库的名称。

示例

让我们尝试使用以下 SQL 语句删除数据库系统中现有的数据库testDB2

DROP DATABASE IF EXISTS testDB2;

当我们执行上述 SQL 语句时,将获得如下输出:

Query OK, 0 rows affected, 3 warnings (0.024 sec)

删除不存在的数据库

让我们尝试删除数据库系统中不存在的数据库testDB2,使用以下 SQL 语句:

DROP DATABASE IF EXISTS testDB2;

当我们执行上述 SQL 语句时,将获得如下输出:

Query OK, 0 rows affected, 1 warning (0.000 sec)

删除多个数据库

您可以使用以下 SQL DROP DATABASE 语句删除多个数据库

DROP DATABASE testDB3, testDB4;
广告