PostgreSQL 删除架构


PostgreSQL 删除架构

在本章中,我们将学习如何在drop schema 命令的帮助下删除**PostgreSQL 模式,以删除不再需要的模式及其相关对象**。

借助DROP 模式语句,我们可以轻松删除或删除或移除 PostgreSQL 模式。如果 Schema 不存在,则会抛出错误;这就是为什么我们可以在 DROP Schema 命令中使用IF EXISTS选项。我们在删除任何架构时应该小心,因为我们将删除特定架构中可用的所有数据和对象。

在PostgreSQL 中,我们可以通过两种不同的方式删除 Schema

  • 使用 psql 的 PostgreSQL 删除模式
  • 使用 pgAdmin 4 的 PostgreSQL 模式

使用 psql 的 PostgreSQL Drop Schema

在PostgreSQL 中,drop schema命令用于从数据库中删除模式及其相关对象。

删除架构的语法

DROP SCHEMA 命令的语法如下:

DROP SCHEMA schema_name;  
or  
DROP SCHEMA [IF EXISTS] schema_name [ CASCADE | RESTRICT ];

在这里,我们有不同的参数用于删除架构。让我们一一看看:

参数 描述
Drop schema 它是一个关键字,用于删除模式。
If Exists 仅当它存在时才删除模式。
Schema_name 模式名称用于指定模式的名称。
Cascade 它用于删除架构和依赖这些对象的所有对象。
Restrict PostgreSQL 默认使用 RESTRICT 选项,只有在 schema 为空时才使用它进行删除。

注意:要执行 DROP SCHEMA 命令,我们必须是我们需要删除的架构的所有者或超级用户。

在 PostgreSQL 中,如果不需要,我们可以删除模式和对象。

  • 在 psql 中,以下命令用于删除架构
Drop schema jtp;
  • 一旦我们执行了上面的查询,我们可能会遇到错误。特定错误指出我们不能删除模式 jtp,因为其他一些对象依赖于它。

PostgreSQL 删除架构

  • 因此,首先,我们必须借助以下命令删除依赖对象
Drop schema if exist jtp cascade;

PostgreSQL 删除架构

输出

要查看模式是否被删除,我们将执行以下命令:

javatpoint=# \dn

上面的命令会显示PostgreSQL中存在的schema,只有两个schema(myschema,public)可用,说明jtp schema删除成功。

PostgreSQL 删除架构

注意:PostgreSQL 允许我们在单个 DROP SCHEMA 命令的帮助下同时删除多个模式。

例如

我们可以在以下命令的帮助下删除javatpoint数据库中存在的多个模式:

Drop Schema if exist myschema, public;

使用 pgAdmin4 的 PostgreSQL Drop Schema

为此,我们将按照以下过程删除或删除 pgAdmin4 中的架构

步骤1

  • 首先,我们将右键单击我们之前创建的myschema和(我们不再需要的架构),然后从给定的下拉列表中选择删除/删除选项:

PostgreSQL 删除架构

第2步

  • 一旦我们点击了删除\删除选项,删除模式弹出窗口将出现在屏幕上,我们点击按钮删除模式。

PostgreSQL 删除架构

Step3

  • 单击“是”按钮后,屏幕上将出现以下错误消息弹出窗口,我们将在此处单击“确定”按钮,如下图所示:

PostgreSQL 删除架构

第四步

  • 要删除架构,我们将首先删除依赖对象,为此,我们将右键单击myschema并从给定的下拉列表中选择删除级联选项。

PostgreSQL 删除架构

第五步

  • 降级联架构

    弹出窗口将出现在屏幕上,在那里我们的点击

    按钮删除相关对象。

PostgreSQL 删除架构

  • 我们删除依赖对象后,myschema会自动删除。