摘要:在本教程中,您将学习如何使用 MySQL DROP DATABASE
语句删除服务器中现有的数据库。
MySQL DROP DATABASE 语句简介
DROP DATABASE
语句删除数据库中的所有表并永久删除数据库。因此,使用该语句时需要非常小心。
下面显示了DROP DATABASE
语句的语法:
DROP DATABASE [IF EXISTS] database_name;
Code language: SQL (Structured Query Language) (sql)
在此语句中,您可以在DROP DATABASE
关键字后指定要删除的数据库的名称。
如果删除不存在的数据库,MySQL 将发出错误。
为了防止在删除不存在的数据库时发生错误,可以使用IF EXISTS
选项。在这种情况下,MySQL 将终止该语句而不发出任何错误。
DROP DATABASE
语句返回其删除的表的数量。
在 MySQL 中,模式是数据库的同义词。因此,您可以互换使用它们:
DROP SCHEMA [IF EXISTS] database_name;
Code language: SQL (Structured Query Language) (sql)
在下一节中,我们将使用CREATE DATABASE
教程中创建的testdb
和testdb2
。如果您没有这些数据库,可以按照前面的教程来创建它们。
MySQL DROP DATABASE
使用 mysql 程序示例
首先,使用root
用户登录MySQL服务器:
mysql -u root -p
Code language: Shell Session (shell)
输入root
用户的密码,然后按 Enter。
Enter password: ********
Code language: Shell Session (shell)
其次,使用SHOW DATABASES
语句显示所有数据库:
SHOW DATABASES;
Code language: SQL (Structured Query Language) (sql)
输出:
+--------------------+
| Database |
+--------------------+
| classicmodels |
| information_schema |
| mysql |
| performance_schema |
| sys |
| testdb |
| testdb2 |
+--------------------+
7 rows in set (0.00 sec)
Code language: Shell Session (shell)
第三,通过发出DROP DATABASE
语句删除testdb
数据库:
DROP DATABASE testdb;
Code language: SQL (Structured Query Language) (sql)
输出:
Query OK, 0 rows affected (0.03 sec)
Code language: Shell Session (shell)
MySQL 返回零受影响的行,表明testdb
数据库没有表。
使用 MySQL Workbench 删除数据库
首先,启动 MySQL 工作台并登录 MySQL 服务器。

其次,右键单击要删除的数据库(例如 testdb2),然后选择Drop Schema...
选项。

第三,MySQL Workbench 显示一个对话框以确认删除。
如果您选择“查看 SQL” ,您将看到将执行的 SQL 语句。如果您选择Drop Now ,它将立即删除数据库。

为了安全起见,我们选择 Review SQL:

第四,一旦确定 SQL 语句将删除正确的数据库,就可以单击“执行”按钮来执行该语句。
MySQL 返回以下输出,表明数据库已成功删除。由于testdb2
是一个空数据库,因此受影响的行数为零。

如果您查看架构窗格,您将看到testdb2不再出现在列表中。

概括
- 使用 MySQL
DROP DATABASE
语句删除数据库。