更新时间:2024-11-12 GMT+08:00
分享

DROP DATABASE

功能描述

删除一个数据库。

注意事项

  • 只有数据库所有者或者被授予了数据库DROP权限的用户有权限执行DROP DATABASE命令,系统管理员默认拥有此权限。
  • 不能对系统默认安装的四个数据库(POSTGRES、TEMPLATE0、TEMPLATE1和TEMPLATEA)执行删除操作,系统做了保护。如果想查看当前服务中有哪几个数据库,可以用gsql的\l命令查看。
  • 如果有用户正在与要删除的数据库连接,则删除操作失败。可以通过视图DV_SESSIONS查看当前有哪些数据库连接。
  • 不能在事务块中执行DROP DATABASE命令。
  • 如果执行DROP DATABASE失败,事务回滚,需要再次执行一次DROP DATABASE IF EXISTS。

DROP DATABASE一旦执行将无法撤销,请谨慎使用。

语法格式

DROP DATABASE [ IF EXISTS ] database_name;

参数说明

  • IF EXISTS

    如果指定的数据库不存在,则发出一个notice而不是抛出一个错误。

  • database_name

    要删除的数据库名称。

    取值范围:字符串,已存在的数据库名称。

示例

--创建数据库。
gaussdb=# CREATE DATABASE testdb1;

--删除数据库。
gaussdb=# DROP DATABASE testdb1;

优化建议

  • DROP DATABASE

    不支持在事务中删除DATABASE。

相关文档