📜  PostgreSQL – 创建架构(1)

📅  最后修改于: 2023-12-03 15:18:38.590000             🧑  作者: Mango

PostgreSQL – 创建架构

在 PostgreSQL 中,架构是在数据库中创建一个逻辑命名空间的方法。架构主要用于在同一个数据库内创建多个独立的数据模型。

创建架构

要创建一个新的架构,可以使用以下语法:

CREATE SCHEMA schema_name;

例如,要创建一个名为 sales 的新架构,可以像这样:

CREATE SCHEMA sales;
创建表在指定的架构下

如果要将表创建在特定的架构下,可以使用以下语法:

CREATE TABLE schema_name.table_name (
    column1 datatype1,
    column2 datatype2,
    .....
);

例如,要在 sales 架构下创建一个名为 orders 的新表,可以按以下方式执行:

CREATE TABLE sales.orders (
    order_id serial PRIMARY KEY,
    customer_name VARCHAR (50) NOT NULL,
    order_date DATE NOT NULL,
    amount double precision NOT NULL
);
查看所有架构

要查看当前数据库中的所有架构,可以使用以下命令:

\dn
设置默认架构

每个用户在 PostgreSQL 数据库中都有默认架构。如果未指定架构名称,则使用默认架构。

默认情况下,创建的所有架构都将放在 public 中。要更改默认架构,请使用以下命令:

ALTER ROLE role_name SET search_path = schema_name;

例如,将默认架构更改为 sales

ALTER ROLE myuser SET search_path = sales;
删除架构

删除架构将删除架构中的所有对象。要删除架构,可以使用以下语法:

DROP SCHEMA IF EXISTS schema_name;

例如,要删除 sales 架构及其所有对象:

DROP SCHEMA IF EXISTS sales CASCADE;

在这里需要注意,CASCADE 选项将删除架构中的所有对象。如果不指定 CASCADE,则不允许删除非空架构。

结论

在 PostgreSQL 数据库中,架构可以更好地组织和管理数据模型。可以使用上述命令创建、修改和删除架构,以满足不同数据模型的需要。