📜  PostgreSQL – 创建架构

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

PostgreSQL – 创建架构

PostgreSQL 有一个 CREATE SCHEMA 语句,用于在数据库中创建新模式。

Syntax:
CREATE SCHEMA [IF NOT EXISTS] schema_name;

我们来分析一下上面的语法:

  • 首先,在 CREATE SCHEMA 关键字之后指定模式的名称。模式名称在当前数据库中必须是唯一的。
  • 其次,可选地使用 IF NOT EXISTS 仅在新模式不存在时有条件地创建它。在不使用 IF NOT EXISTS 选项的情况下尝试创建已经存在的新模式将导致错误。

注意:要执行 CREATE SCHEMA 语句,您必须在当前数据库中具有 CREATE 权限。
要为用户创建架构,请使用以下命令:

Syntax:
CREATE SCHEMA [IF NOT EXISTS] AUTHORIZATION user_name;

现在我们已经了解了在 PostgreSQL 中创建模式的基础知识,让我们进入一些示例。

示例 1:
以下语句使用 CREATE SCHEMA 语句创建一个名为marketing的新模式:



CREATE SCHEMA IF NOT EXISTS marketing;

以下语句返回当前数据库中的所有模式:

SELECT 
  * 
FROM 
    pg_catalog.pg_namespace
ORDER BY 
    nspname;

输出:

示例 2:
在此示例中,我们将为用户(例如 Raju)创建一个架构。做展示让我们首先使用以下语句创建一个用户:

CREATE USER Raju WITH ENCRYPTED PASSWORD 'Postgres123';

Raju创建一个架构,如下所示:

CREATE SCHEMA AUTHORIZATION Raju;

第三,创建一个将由 Raju 拥有的新模式:

CREATE SCHEMA IF NOT EXISTS geeksforgeeks AUTHORIZATION Raju;

以下语句返回当前数据库中的所有模式:

SELECT 
  * 
FROM 
    pg_catalog.pg_namespace
ORDER BY 
    nspname;

输出: