文档主页
MySQL 9.0 参考手册
相关文档 下载本手册

MySQL 9.0 参考手册  /  ...  /  DROP DATABASE 语句

15.1.24 DROP DATABASE 语句

DROP {DATABASE | SCHEMA} [IF EXISTS] db_name

DROP DATABASE 删除数据库中的所有表并删除该数据库。请务必谨慎使用此语句!要使用DROP DATABASE,您需要对该数据库具有DROP 权限。 DROP SCHEMADROP DATABASE 的同义词。

重要

删除数据库时,专门授予该数据库的权限不会自动删除。必须手动删除它们。请参阅 第 15.7.1.6 节,“GRANT 语句”

IF EXISTS 用于防止在数据库不存在时发生错误。

如果删除默认数据库,则默认数据库将被取消设置(DATABASE() 函数返回 NULL)。

如果您对符号链接的数据库使用 DROP DATABASE,则链接和原始数据库都将被删除。

DROP DATABASE 返回已删除的表数量。

DROP DATABASE 语句从给定的数据库目录中删除 MySQL 在正常操作期间可能创建的文件和目录。这包括以下列表中显示的所有扩展名文件

  • .BAK

  • .DAT

  • .HSH

  • .MRG

  • .MYD

  • .MYI

  • .cfg

  • .db

  • .ibd

  • .ndb

如果在 MySQL 删除上述文件和目录后,数据库目录中仍然存在其他文件或目录,则无法删除数据库目录。在这种情况下,您必须手动删除任何剩余的文件或目录,然后再次发出 DROP DATABASE 语句。

删除数据库不会删除在该数据库中创建的任何 TEMPORARY 表。 TEMPORARY 表在创建它们的会话结束时会自动删除。请参阅 第 15.1.20.2 节,“CREATE TEMPORARY TABLE 语句”

您也可以使用 mysqladmin 删除数据库。请参阅 第 6.5.2 节,“mysqladmin — MySQL 服务器管理程序”