PostgreSQL – 删除架构
PostgreSQL 还支持使用 DROP SCHEMA 语句删除模式及其对象。
Syntax: DROP SCHEMA [IF EXISTS] schema_name [ CASCADE | RESTRICT ];
我们来分析一下上面的语法:
- 首先,在 DROP SCHEMA 关键字之后指定要从中删除的模式的名称。
- 其次,使用 IF EXISTS 选项有条件地仅在模式存在时删除模式。
- 第三,使用 CASCADE 删除架构及其所有对象,进而删除依赖于这些对象的所有对象。如果您只想在架构为空时删除架构,您可以使用 RESTRICT 选项。默认情况下,PostgreSQL 使用 RESTRICT。
要执行 DROP SCHEMA 语句,您必须是要删除的架构的所有者或超级用户。 PostgreSQL 还允许您使用单个 DROP SCHEMA 语句同时删除多个模式。
现在让我们看一些例子。
示例 1:
此示例使用 DROP SCHEMA 语句删除我们数据库中存在marketing
DROP SCHEMA IF EXISTS marketing;
要验证,请使用以下语句:
SELECT * FROM pg_catalog.pg_namespace ORDER BY nspname;
输出:
示例 2:
以下示例使用 DROP SCHEMA 语句使用单个语句gfg
和Raju
DROP SCHEMA IF EXISTS gfg, raju;
要验证,请使用以下语句:
SELECT * FROM pg_catalog.pg_namespace ORDER BY nspname;
输出: