📜  PostgreSQL删除架构

📅  最后修改于: 2020-11-30 07:51:26             🧑  作者: Mango

PostgreSQL删除架构

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

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

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

  • PostgreSQL使用psql删除架构
  • 使用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 ];

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

Parameters Description
Drop schema It is a keyword, which is used to delete the schema.
If Exists It removes the schema only if it exists.
Schema_name The schema name is used to specify the name of the schema.
Cascade It is used to remove schema and all the objects that rely on those objects.
Restrict PostgreSQL uses the RESTRICT option by default, and it is used to remove only when the schema is empty.

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

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

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

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

输出量

要查看架构是否已删除,我们将执行以下命令:

javatpoint=# \dn

上面的命令将显示PostgreSQL中存在的模式,并且只有两个模式(myschema,public)可用,这意味着jtp模式已成功删除。


注意:PostgreSQL提供了在单个DROP SCHEMA命令的帮助下同时删除多个模式的方法。

例如

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

Drop Schema if exist myschema, public;

使用pgAdmin4的PostgreSQL Drop Schema

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

步骤1

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

第2步

  • 单击删除\放置选项后,放置模式弹出窗口将出现在屏幕上,在此处单击“是”按钮以删除模式。

第三步

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

第四步

  • 要删除模式,我们将首先删除从属对象,为此,我们将在myschema上单击鼠标右键,然后从给定的下拉列表中选择“删除级联”选项。

步骤5

  • 放下层叠模式弹出窗口将出现在屏幕上,我们单击“是”按钮以删除相关对象。

  • 删除依赖对象后,将自动删除myschema。