PostgreSQL 更改模式

2025年3月17日 | 阅读 3 分钟

在本节中,我们将学习PostgreSQL ALTER SCHEMA 命令,该命令用于更改模式的描述

ALTER SCHEMA 命令

alter schema 命令将允许我们修改模式的定义。例如,我们也可以借助下面的 alter schema 命令来重命名一个模式。

更改模式命令的语法如下所示

我们在上述语法中使用以下参数

参数描述
Alter Schema这是一个关键字,用于更改模式的描述
Schema_Name它用于描述模式的名称,我们需要重命名它。
New_Name此参数用于定义模式的新名称,我们不能使用pg_开始新名称,因为在 PostgreSQL 中,此类名称保留给系统模式。

注意:要执行上述命令,我们必须是模式的拥有者,并且我们也可以访问数据库的 CREATE 权限。

除了重命名模式,在 ALTER SCHEMA 中,我们还可以借助下面的命令来修改模式的所有者

我们在上述语法中使用以下参数

参数描述
Schema_Name要在 ALTER SCHEMA 条件中修改所有者,我们将描述模式的名称。
New_owner它用于在 OWNER TO 条件中定义新的所有者。

PostgreSQL ALTER SCHEMA 命令的示例

让我们看几个例子,了解如何使用 PostgreSQL 中的 ALTER SCHEMA 命令。以下示例基于我们在 PostgreSQL CREATE SCHEMA 部分中创建的模式。

使用 ALTER SCHEMA 命令重命名模式

下面的示例用于借助 alter schema 命令重命名模式

在这里,我们将把myschema 模式重命名为Schema1 模式

输出

执行上述命令后,我们将获得以下输出窗口

PostgreSQL ALTER Schema

同样,下面的示例用于描述重命名Company 模式department:

输出

执行上述命令后,我们将获得以下输出:

PostgreSQL ALTER Schema

使用 alter schema 命令修改模式的所有者

在这个特定的例子中,我们将借助 Alter schema 将Schema1的所有者从myschema修改为Postgres

PostgreSQL ALTER Schema

然后,我们将执行用户创建的模式命令

注意:在 PostgreSQL 中,pg_catalog 是 Postgres 用于在内部完成事情的典型元数据和核心模式。

pg_namespace 是一个目录,用于存储命名空间。 命名空间是基本 SQL 模式的结构,每个命名空间都可以有不同的类型、关系等的集合,而不会发生名称冲突。

输出

执行上述查询后,我们将获得以下输出,其中包含一个表,我们可以看到Schema1 模式由所有者 id 10 维护,即Postgres id。

PostgreSQL ALTER Schema
下一主题PostgreSQL 插入