📜  PostgreSQL – 删除架构

📅  最后修改于: 2022-05-13 01:57:14.904000             🧑  作者: Mango

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 语句使用单个语句gfgRaju

DROP SCHEMA IF EXISTS gfg, raju;

要验证,请使用以下语句:

SELECT * FROM  pg_catalog.pg_namespace ORDER BY nspname;

输出: