
# DROP DATABASE
#### 功能描述
删除一个数据库。
#### 注意事项
- 只有数据库所有者或者被授予了数据库DROP权限的用户有权限执行DROP DATABASE命令，系统管理员默认拥有此权限。
- 不能对系统默认安装的四个数据库（POSTGRES、TEMPLATE0、TEMPLATE1和TEMPLATEA）执行删除操作，系统做了保护。如果想查看当前服务中有哪几个数据库，可以用gsql的\\l命令查看。
- 如果有用户正在与要删除的数据库连接，则删除操作失败。可以通过视图DV_SESSIONS查看当前有哪些数据库连接。
- 不能在事务块中执行DROP DATABASE命令。
- 如果执行DROP DATABASE失败，事务回滚，需要再次执行一次DROP DATABASE IF EXISTS。
![](https://support.huaweicloud.com/centralized-devg-v8-gaussdb/public_sys-resources/notice_3.0-zh-cn.png)
DROP DATABASE一旦执行将无法撤销，请谨慎使用。
#### 语法格式
```
DROP DATABASE [ IF EXISTS ] database_name;
```
![](https://support.huaweicloud.com/centralized-devg-v8-gaussdb/figure/zh-cn_image_0000002558219571.png "点击放大")
#### 参数说明
- **IF EXISTS**
  如果指定的数据库不存在，则发出一个notice而不是抛出一个错误。
  
- **database_name**
  要删除的数据库名称。
  取值范围：字符串，已存在的数据库名称。
  
 
#### 示例
```
--创建数据库。
gaussdb=# CREATE DATABASE testdb1;
--删除数据库。
gaussdb=# DROP DATABASE testdb1;
```
#### 相关链接
[ALTER DATABASE](https://support.huaweicloud.com/centralized-devg-v8-gaussdb/gaussdb-42-0480.html#ZH-CN_TOPIC_0000002527828268)，[CREATE DATABASE](https://support.huaweicloud.com/centralized-devg-v8-gaussdb/gaussdb-42-0541.html#ZH-CN_TOPIC_0000002527988246)
#### 优化建议
- DROP DATABASE 不支持在事务中删除DATABASE。
  
 
