2024年9月26日:PostgreSQL 17 发布!
支持的版本:当前 (17) / 16 / 15 / 14 / 13 / 12
开发版本:devel
不支持的版本:11 / 10 / 9.6 / 9.5 / 9.4 / 9.3 / 9.2 / 9.1 / 9.0 / 8.4 / 8.3 / 8.2 / 8.1 / 8.0 / 7.4 / 7.3 / 7.2 / 7.1

DROP DATABASE

DROP DATABASE — 删除数据库

语法

DROP DATABASE [ IF EXISTS ] name [ [ WITH ] ( option [, ...] ) ]

where option can be:

    FORCE

描述

DROP DATABASE 删除一个数据库。它删除数据库的目录条目并删除包含数据的目录。只有数据库所有者才能执行此命令。当您连接到目标数据库时,无法执行此命令。(连接到postgres或任何其他数据库以发出此命令。)此外,如果其他人连接到目标数据库,则此命令将失败,除非您使用下面描述的FORCE选项。

DROP DATABASE无法撤消。请谨慎使用!

参数

IF EXISTS

如果数据库不存在,则不抛出错误。在这种情况下,会发出通知。

name

要删除的数据库的名称。

FORCE

尝试终止所有现有的到目标数据库的连接。如果目标数据库中存在准备好的事务、活动的逻辑复制槽或订阅,则不会终止。

这将终止后台工作程序连接和当前用户有权使用pg_terminate_backend终止的连接,如第 9.28.2 节所述。如果连接仍然存在,则此命令将失败。

注释

DROP DATABASE不能在事务块内执行。

连接到目标数据库时无法执行此命令。因此,使用程序dropdb可能会更方便,它是一个围绕此命令的包装器。

兼容性

SQL 标准中没有DROP DATABASE语句。

另请参阅

CREATE DATABASE

提交更正

如果您在文档中看到任何不正确的内容,与您对特定功能的体验不符,或者需要进一步说明,请使用此表单报告文档问题。